**selenium模組和爬蟲之間具有怎樣的關聯?
- 便捷的獲取**中動態載入的資料
- 便捷實現模擬登入
什麼是selenium模組?
- 基於瀏覽器自動化的乙個模組。
selenium使用流程:
- 環境安裝:pip install selenium
- 驅動程式和瀏覽器的對映關係:http:
51896672
- 例項化乙個瀏覽器物件
- 編寫基於瀏覽器自動化的操作**
- 發起請求:get(url)
- 標籤定位:find系列的方法
- 標籤互動:send_keys(
'***'
)- 執行js程式:excute_script(
'jscode'
)- 前進,後退:back(
),forward(
)- 關閉瀏覽器:quit(
)
爬取藥監局企業資訊案例
from selenium import webdriver
from lxml import etree
from time import sleep
#例項化乙個瀏覽器物件(傳入瀏覽器的驅動成)
bro = webdriver.chrome(executable_path=
'./chromedriver'
)#讓瀏覽器發起乙個指定url對應請求
bro.get(
'')#page_source獲取瀏覽器當前頁面的頁面原始碼資料
page_text = bro.page_source
#解析企業名稱
tree = etree.html(page_text)
li_list = tree.xpath(
'//ul[@id="gzlist"]/li'
)for li in li_list:
name = li.xpath(
'./dl/@title')[
0]print
(name)
sleep(5)
bro.quit(
)
關於**的爬取
from selenium import webdriver
from time import sleep
bro = webdriver.chrome(executable_path=
'./chromedriver'
)bro.get(
'')#標籤定位
seacher_input = bro.find_element_by_id(
'q')
#標籤互動
seacher_input.send_keys(
'iphone'
)#執行一組js**,實現滾屏操作
bro.execute_script(
'window.scrollto(0,document.body.scrollheight)'
)sleep(2)
btn = bro.find_element_by_css_selector(
'.btn-search'
)btn.click(
)bro.get(
'')sleep(2)
#回退bro.back(
)sleep(2)
#前進bro.forward(
)sleep(5)
bro.quit(
)
selenium模組簡單使用
from selenium import webdriver selenium可以操作許多瀏覽器這裡我們使用chrome browser webdriver.chrome 如果你的瀏覽器驅動是安裝好的,這時候已經可以看到彈出來了乙個瀏覽器介面 browser.get input browser.fi...
selenium 模擬登陸模組
由於業務需要多站點 多賬號的登陸資料,定製化登陸費時費力,且不易管理,故對登陸過程進行模板化,通過配置xpath等,實現各平台的登陸,目前已接入輸入驗證碼的識別和滑動驗證碼的識別,同時使用redis作為訊息佇列,實現分布式 1 整體流程 1 使用說明 2 實現過程 2 功能點 1 輸入驗證碼識別 2...
Selenium模組將不再支援PhantomJS
近期玩爬蟲在安裝模組與指令碼測試使用時,發現乙個發問題 下方 匯入selenium模組 from selenium import webdriver 建立乙個開啟chrome瀏覽器物件 driver webdriver.phantomjs executable path r d python pha...