月餅銷量資料分析
開發環境
python3.7
pycharm
selenium
csv
開發工具
selenium工具的使用
結構化的資料解析
csv資料儲存(相容性)
程式流程
import csv
import time
from selenium import webdriver
'''下面的**,都是使用者行為去決定的,
你平常怎麼瀏覽, 你的**邏輯,就應該怎麼編寫,
'''def get_product(key):
"""搜尋商品的功能
:send_key 關鍵字, 比如(月餅)
"""driver.find_element_by_css_selector('#key').send_keys(key)
driver.find_element_by_css_selector('.button').click()
# 進入頁面(需要載入《耗時》)
driver.implicitly_wait(10) # 隱式等待(彈性等待)----》死等
driver.maximize_window() # 視窗最大化,
# 懶載入-- 根據滑鼠滾動,
def drop_down():
"""模擬人去滾動滑鼠, 載入所有資料
:return:
"""for x in range(1,11,2):
time.sleep(0.5)
# 分為5個部分
j = x/10
js = 'document.documentelement.scrolltop = document.documentelement.scrollheight * %f' % j
driver.execute_script(js)
def parse_product():
"""解析商品資料
:return:
"""# 多個標籤用find_elements_by_css_selector()
lis = driver.find_elements_by_css_selector('.gl-item')
try:
for li in lis:
name = li.find_element_by_css_selector('div.p-name a em').text # 商品名字
price = li.find_element_by_css_selector('div.p-price strong i').text + '元' # 商品**
deal = li.find_element_by_css_selector('div.p-commit strong a').text # 商品評價
title = li.find_element_by_css_selector('span.j_im_icon a').text # 商鋪名字
print("%s\n %s\n %s\n %s\n" % (name,price,deal,title))
# 寫入data.csv檔案
with open("data.csv", "a", encoding="utf-8", newline='') as f:
csv_write = csv.writer(f)
csv_write.writerow([name,price,deal,title])
except exception as e:
print(e)
def get_next():
driver.find_element_by_css_selector('#j_bottompage > span.p-num > a.pn-next').click()
driver.implicitly_wait(10)
if __name__ == '__main__':
"""程式入口"""
keywords = input("請輸入你想要的商品。。")
driver = webdriver.chrome() # 建立乙個瀏覽器物件
driver.get("")
get_product(keywords)
# 取3頁資料
for i in range(3):
drop_down()
parse_product()
get_next()
通過資料視覺化檔案,形成點狀圖,商家即可分析資料 爬蟲小專案
將爬取到的資料儲存在csv檔案中 由於習慣 作者會將獲取到的資料儲存 然後在儲存的檔案中進行匹配 這樣會降低程式執行時間 import requests from lxml import html from bs4 import beautifulsoup url headers res reque...
4月的小專案總結
月初接了乙個小的php專案,今天終於完成。甲方是老客戶,而且將來的維護也要我來做。所以我給的 也比較優惠。自己定的計畫是9 12個工作日完成,甲方要求一星期完成。雖然在既有 上修改,是個二次開發,但是對方交接的時候除了密碼之外一概沒有。我想努努力應該可以吧。結果。晚了5天!總結 沒有估計好時間。一次...
python2 7爬蟲實戰小專案
爬蟲原理和思想 本專案實現的基本目標 在捧腹網中,把搞笑的都爬下來,注意不需要爬取頭像的,同時,將命好名放在當前的img檔案中。爬蟲原理和思想 爬蟲涉及到額度基本知識 1 導入庫 模組 該 是用於讀取網頁 exp 使用urllib.urlopen 開啟捧腹網 使用read 讀取,如 比較龐大,也可以...