簡介
本節採用python爬蟲相關技術獲取淘寶商品信息。採用的技術有selenium、pyquery及urllib.parse等。selenium可以模擬用戶執行的操作,是一個自動化測試工具,我們可以根據自己的需要預先設置selenium按照我們設置好的步驟進行操作,而在爬蟲中我們使用selenium可以解決javascript動態執行代碼的問題,不用費心去解析js如何運行,運行後產生的信息,直接使用selenium模擬實際登陸網頁的操作,獲取我們需要的信息進行分析,成功幫我們避開一系列複雜的通信過程,方便使用者。
selenium有優點也有缺點,模擬用戶實際操作,必須等待網頁的必要信息加載完畢,如靜態頁面、css等,所以效率比較低,所以具體看用戶如何取捨,如果注重效率,可以用requests模塊進行分析爬取,後續有空也會採用requests、urllib庫進行爬蟲訓練,使用正則表達式分析爬取到的內容。
環境準備
使用selenium模擬用戶登錄,我採用的是谷歌瀏覽器來進行模擬。首先個人電腦已經正確安裝了谷歌瀏覽器。其次下載與我們谷歌瀏覽器相匹配版本的chromedriver.exe谷歌驅動器。下圖是電腦谷歌瀏覽器地址,然後我們下載對應版本的chromedriver.exe放到python安裝路徑的scripts目錄下。
然後使用下述簡單代碼驗證環境是否準備完畢。
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('淘寶網址或百度網址')
print(browser.page_source)
browser.close()
如果獲取到列印信息,則證明selenium可以在谷歌瀏覽器上正常工作了。接下去需要按F12查看並分析淘寶登錄界面的元素信息(見圖1),獲取輸入框和按鈕的相關信息,以便我們使用selenium模擬用戶登錄,登陸後搜索關鍵信息。

流程
淘寶相比其他網站,在反爬蟲方面設置的坎比較多的,包括滑塊驗證,手機驗證碼及頁面刷新等,某個步驟失效,爬蟲過程都有問題。獲取淘寶信息的流程包括:
1、引入用到的爬蟲庫

1、使用個人真實用戶名和密碼登錄淘寶

2、根據關鍵字搜索淘寶網站,爬取搜索到的內容

3、分析爬取的關鍵字信息內容,獲取我們需要的信息

4、main調用
LOGIN_URL = '淘寶登陸頁地址'
KEYWORD = '玩具 女孩4歲'
account = 'yourselfAccount'
# 輸入你的帳號名
password = 'yourselfPsw'
pages=5
# 輸入你密碼
Product(account,password,pages).start()
結果
完整代碼運行結果如下圖所示,我們可以對爬取的信息進行分析,作為智能分析算法的訓練數據,如果需要代碼請留言,樂意分享,一起交流。