目錄
- Selenium
- selenium的用途
- selenium是優(yōu)缺點
- 1. Selenium工作原理
- 1.1 Selenium配置
- 1.2 瀏覽器驅動
- 1.3 使用Selenium
- 2 快速入門
Python爬蟲、數(shù)據(jù)分析、網(wǎng)站開發(fā)等案例教程視頻免費在線觀看
https://space.bilibili.com/523606542
Selenium
Selenium是一個Web的自動化測試工具,最初是為網(wǎng)站自動化測試而開發(fā)的,就像玩游戲用的按鍵精靈,可以按指定的命令自動操作。
Selenium測試工具直接操控瀏覽器中,就像真正的用戶在操作一樣。Selenium可以根據(jù)的指令,讓瀏覽器自動加載頁面,獲取需要的數(shù)據(jù),甚至頁面截屏,或者判斷網(wǎng)站上某些動作是否發(fā)生等。
selenium的用途
?。?)、selenium可以驅動瀏覽器自動執(zhí)行自定義好的邏輯代碼,也就是可以通過代碼完全模擬成人類使用瀏覽器自動訪問目標站點并操作,那我們也可以拿它來做爬蟲。
?。?)、selenium本質上是通過驅動瀏覽器,完全模擬瀏覽器的操作,比如跳轉、輸入、點擊、下拉等...進而拿到網(wǎng)頁渲染之后的結果,可支持多種瀏覽器
selenium是優(yōu)缺點
?。?)優(yōu)點
優(yōu)點就是可以幫我們避開一系列復雜的通信流程,例如在我們之前學習的requests模塊,那么requests模塊在模擬請求的時候是不是需要把素有的通信流程都分析完成后才能通過請求,然后返回響應。假如目標站點有一系列復雜的通信流程,例如的登錄時的滑動驗證等...那么你使用requests模塊的時候是不是就特別麻煩了。不過你也不需要擔心,因為網(wǎng)站的反爬策略越高,那么用戶的體驗效果就越差,所以網(wǎng)站都需要在用戶的淫威之下降低安全策略。
再看一點requests請求庫能不能執(zhí)行js?是不是不能呀!那么如果你的網(wǎng)站需要發(fā)送ajax請求,異步獲取數(shù)據(jù)渲染到頁面上,是不是就需要使用js發(fā)送請求了。那瀏覽器的特點是什么?是不是可以直接訪問目標站點,然后獲取對方的數(shù)據(jù),從而渲染到頁面上。那這些就是使用selenium的好處!
?。?)缺點
使用selenium本質上是驅動瀏覽器對目標站點發(fā)送請求,那瀏覽器在訪問目標站點的時候,是不是都需要把靜態(tài)資源都加載完畢。html、css、js這些文件是不是都要等待它加載完成。是不是速度特別慢。那用它的壞處就是效率極低!所以我們一般用它來做登錄驗證。
1. Selenium工作原理
如圖所示,通過Python來控制Selenium,然后讓Selenium 控制瀏覽器,操縱瀏覽器,這樣就實現(xiàn)了使用Python間接的操控瀏覽器。
1.1 Selenium配置
Selenium支持多種瀏覽器,最常見的就是火狐和谷歌瀏覽器。首先在電腦上下載瀏覽器,瀏覽器版本不宜過新。
火狐:截圖如下
谷歌:截圖如下
1.2 瀏覽器驅動
Selenium具體怎么就能操縱瀏覽器呢?這要歸功于瀏覽器驅動,Selenium可以通過API接口實現(xiàn)和瀏覽器驅動的交互,進而實現(xiàn)和瀏覽器的交互。所以要配置瀏覽器驅動。
火狐驅動下載地址:
http://npm.taobao.org/mirrors/geckodriver/
谷歌驅動下載地址:
https://npm.taobao.org/mirrors/chromedriver/
配置瀏覽器驅動:
將下載好的瀏覽器驅動解壓,將解壓出的exe文件放到Python的安裝目錄下,也就是和python.exe同目錄即可。
1.3 使用Selenium
安裝selenium模塊,python借助這個模塊驅動瀏覽器,使用如下命令行安裝這個模塊即可
2 快速入門
# 打開百度首頁
from selenium import webdriver
driver = webdriver.chrome()
url = 'https : / /www.baidu . com/ '
driver.get(url)
#打開get就類似與在瀏覽器地址欄里面放入網(wǎng)址
driver.get(url)
#退出瀏覽器
driver.quit()
以上就是Python爬蟲基礎初探selenium的詳細內容,更多關于Python爬蟲基礎selenium的資料請關注腳本之家其它相關文章!
您可能感興趣的文章:- 用Python selenium實現(xiàn)淘寶搶單機器人
- Python selenium的這三種等待方式一定要會!
- 教你如何使用Python selenium
- 教你怎么用python selenium實現(xiàn)自動化測試
- python3+selenium4實現(xiàn)切換窗口與iframe的方法
- Python爬蟲基礎之selenium庫的用法總結
- 教你怎么用Python selenium操作瀏覽器對象的基礎API