目錄
- Selenium
- selenium的用途
- selenium是優(yōu)缺點(diǎn)
- 1. Selenium工作原理
- 1.1 Selenium配置
- 1.2 瀏覽器驅(qū)動(dòng)
- 1.3 使用Selenium
- 2 快速入門(mén)
Python爬蟲(chóng)、數(shù)據(jù)分析、網(wǎng)站開(kāi)發(fā)等案例教程視頻免費(fèi)在線觀看
https://space.bilibili.com/523606542
Selenium
Selenium是一個(gè)Web的自動(dòng)化測(cè)試工具,最初是為網(wǎng)站自動(dòng)化測(cè)試而開(kāi)發(fā)的,就像玩游戲用的按鍵精靈,可以按指定的命令自動(dòng)操作。
Selenium測(cè)試工具直接操控瀏覽器中,就像真正的用戶在操作一樣。Selenium可以根據(jù)的指令,讓瀏覽器自動(dòng)加載頁(yè)面,獲取需要的數(shù)據(jù),甚至頁(yè)面截屏,或者判斷網(wǎng)站上某些動(dòng)作是否發(fā)生等。
selenium的用途
?。?)、selenium可以驅(qū)動(dòng)瀏覽器自動(dòng)執(zhí)行自定義好的邏輯代碼,也就是可以通過(guò)代碼完全模擬成人類(lèi)使用瀏覽器自動(dòng)訪問(wèn)目標(biāo)站點(diǎn)并操作,那我們也可以拿它來(lái)做爬蟲(chóng)。
?。?)、selenium本質(zhì)上是通過(guò)驅(qū)動(dòng)瀏覽器,完全模擬瀏覽器的操作,比如跳轉(zhuǎn)、輸入、點(diǎn)擊、下拉等...進(jìn)而拿到網(wǎng)頁(yè)渲染之后的結(jié)果,可支持多種瀏覽器
selenium是優(yōu)缺點(diǎn)
?。?)優(yōu)點(diǎn)
優(yōu)點(diǎn)就是可以幫我們避開(kāi)一系列復(fù)雜的通信流程,例如在我們之前學(xué)習(xí)的requests模塊,那么requests模塊在模擬請(qǐng)求的時(shí)候是不是需要把素有的通信流程都分析完成后才能通過(guò)請(qǐng)求,然后返回響應(yīng)。假如目標(biāo)站點(diǎn)有一系列復(fù)雜的通信流程,例如的登錄時(shí)的滑動(dòng)驗(yàn)證等...那么你使用requests模塊的時(shí)候是不是就特別麻煩了。不過(guò)你也不需要擔(dān)心,因?yàn)榫W(wǎng)站的反爬策略越高,那么用戶的體驗(yàn)效果就越差,所以網(wǎng)站都需要在用戶的淫威之下降低安全策略。
再看一點(diǎn)requests請(qǐng)求庫(kù)能不能執(zhí)行js?是不是不能呀!那么如果你的網(wǎng)站需要發(fā)送ajax請(qǐng)求,異步獲取數(shù)據(jù)渲染到頁(yè)面上,是不是就需要使用js發(fā)送請(qǐng)求了。那瀏覽器的特點(diǎn)是什么?是不是可以直接訪問(wèn)目標(biāo)站點(diǎn),然后獲取對(duì)方的數(shù)據(jù),從而渲染到頁(yè)面上。那這些就是使用selenium的好處!
?。?)缺點(diǎn)
使用selenium本質(zhì)上是驅(qū)動(dòng)瀏覽器對(duì)目標(biāo)站點(diǎn)發(fā)送請(qǐng)求,那瀏覽器在訪問(wèn)目標(biāo)站點(diǎn)的時(shí)候,是不是都需要把靜態(tài)資源都加載完畢。html、css、js這些文件是不是都要等待它加載完成。是不是速度特別慢。那用它的壞處就是效率極低!所以我們一般用它來(lái)做登錄驗(yàn)證。
1. Selenium工作原理

如圖所示,通過(guò)Python來(lái)控制Selenium,然后讓Selenium 控制瀏覽器,操縱瀏覽器,這樣就實(shí)現(xiàn)了使用Python間接的操控瀏覽器。
1.1 Selenium配置
Selenium支持多種瀏覽器,最常見(jiàn)的就是火狐和谷歌瀏覽器。首先在電腦上下載瀏覽器,瀏覽器版本不宜過(guò)新。
火狐:截圖如下

谷歌:截圖如下

1.2 瀏覽器驅(qū)動(dòng)
Selenium具體怎么就能操縱瀏覽器呢?這要?dú)w功于瀏覽器驅(qū)動(dòng),Selenium可以通過(guò)API接口實(shí)現(xiàn)和瀏覽器驅(qū)動(dòng)的交互,進(jìn)而實(shí)現(xiàn)和瀏覽器的交互。所以要配置瀏覽器驅(qū)動(dòng)。
火狐驅(qū)動(dòng)下載地址:
http://npm.taobao.org/mirrors/geckodriver/
谷歌驅(qū)動(dòng)下載地址:
https://npm.taobao.org/mirrors/chromedriver/
配置瀏覽器驅(qū)動(dòng):
將下載好的瀏覽器驅(qū)動(dòng)解壓,將解壓出的exe文件放到Python的安裝目錄下,也就是和python.exe同目錄即可。

1.3 使用Selenium
安裝selenium模塊,python借助這個(gè)模塊驅(qū)動(dòng)瀏覽器,使用如下命令行安裝這個(gè)模塊即可
2 快速入門(mén)
# 打開(kāi)百度首頁(yè)
from selenium import webdriver
driver = webdriver.chrome()
url = 'https : / /www.baidu . com/ '
driver.get(url)
#打開(kāi)get就類(lèi)似與在瀏覽器地址欄里面放入網(wǎng)址
driver.get(url)
#退出瀏覽器
driver.quit()
以上就是Python爬蟲(chóng)基礎(chǔ)初探selenium的詳細(xì)內(nèi)容,更多關(guān)于Python爬蟲(chóng)基礎(chǔ)selenium的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- 用Python selenium實(shí)現(xiàn)淘寶搶單機(jī)器人
- Python selenium的這三種等待方式一定要會(huì)!
- 教你如何使用Python selenium
- 教你怎么用python selenium實(shí)現(xiàn)自動(dòng)化測(cè)試
- python3+selenium4實(shí)現(xiàn)切換窗口與iframe的方法
- Python爬蟲(chóng)基礎(chǔ)之selenium庫(kù)的用法總結(jié)
- 教你怎么用Python selenium操作瀏覽器對(duì)象的基礎(chǔ)API