匯入必要的庫
from selenium import webdriver
import time
import re
模擬進入**頁面driver=webdriver.chrome(
)# 這裡選用chrome瀏覽器
)
搜尋商品,獲取商品目錄的頁碼數def
search()
: driver.find_element_by_id(
'q')
.send_keys(
'口紅'
)#往搜尋框輸入搜尋商品名稱
driver.find_element_by_class_name(
'btn-search'
).click(
) time.sleep(50)
token=driver.find_element_by_xpath(
'//*[@id="mainsrp-pager"]/div/div/div/div[1]'
).text #找到商品目錄的頁數的相關文字
token=
int(re.
compile
('\d+'
).search(token)
.group(0)
)#獲取商品目錄的頁數
return token
模擬下拉def
drop_down()
:for x in
range(1
,11,2
):time.sleep(
0.5)
j=x/
10# 滑到的位置
js='document.documentelement.scrolltop = document.documentelement.scrollheight * %f'
% j driver.execute_script(js)
模擬獲取每一頁的商品資訊def
get_product()
: divs = driver.find_elements_by_xpath(
'//div[@class="items"]/div[@class="item j_mouseronverreq "]'
)# div class="items"下的div class="item j_mouseronverreq"
# 返回乙個列表,列表元素為div class="item j_mouseronverreq"的明細
for div in divs:
data=
#以下是當前目錄下div class 屬性
info = div.find_element_by_xpath(
'.//div[@class="row row-2 title"]'
).text
# 付款金額
price = div.find_element_by_xpath(
'.//div[@class="price g_price g_price-highlight"]/strong'
).text+
'元'# 付款人數(銷售數)
number = div.find_element_by_xpath(
'.//div[@class="deal-cnt"]'
).text
location = div.find_element_by_xpath(
'.//div[@class="location"]'
).text
img= div.find_element_by_xpath(
'.//div[@class="pic"]/a/img'
).get_attribute(
'src'
)
return datas
# datas 是乙個大列表,裡面的每個小列表代表乙個商品的資料資訊
模擬翻頁def
next_page()
: token=search(
) num=
0while num !=token-1:
driver.get(
'口紅&s={}'
.format(44
*num)
) driver.implicitly_wait(20)
#20秒內(不一定是20秒)
num+=
1 drop_down(
) alldata=get_product(
)return alldata
呼叫函式,開始爬取資訊if __name__==
'__main__'
: datas=
alldata=next_page(
)print
(alldata)
selenium 爬取拉勾
用到的知識點 用selenium爬取拉勾 from lxml import etree from selenium import webdriver from selenium.webdriver.support import expected conditions as ec from selen...
selenium爬取拉勾
用到的知識點 用selenium爬取拉勾 from lxml import etree from selenium import webdriver from selenium.webdriver.support import expected conditions as ec from selen...
selenium爬取京東商品
from selenium import webdriver import time import pandas as pd url browser webdriver.chrome browser.get url 找到頁面中的搜尋框,然後輸入想找的商品 browser.find element b...