在Ubuntu 14.04.5 LTS上安装python模块selenium 3实录
簡介
Selenium是python模塊庫中一組web自動化測試工具集,提供多種語言的API,例如java,python,ruby,.net等,支持Firefox,Chrome,IE,Safari 等多種瀏覽器,但是它驅動瀏覽器運行需要有專門的驅動程序。當驅動程序與瀏覽器的版本不匹配是就會報錯。所以下載驅動一定要注意版本的匹配問題。
Selenium2.0和selenium3.0的到底選擇哪個?
Selenium3.0 相較于selenium 2.0 API沒有變化,主要增加了如下特性:
支持Mac OS,支持官方的Safaridriver
通過微軟官方的webdriver server支持Edge瀏覽器
只支持IE 9.0版本以上
通過Mozilla官方的geckodriver來支持Firefox。
綜上,selenium3.0支持的瀏覽器版本更多,所以建議選擇selenium3.0
安裝selenium
sudo pip install selenium
由截圖可以看出,在Ubuntu 16.04.5 LTS上安裝的是selenium 3版本。
下面查看我Ubuntu 16.04.5 LTS上安裝的Chrome和Firefox的版本號,以便下面安裝合適的驅動版本
如果想使用Chrome則需要安裝驅動,可以在下面的網址下載
http://chromedriver.storage.googleapis.com/index.html
安裝ChromeDriver
sudo apt-get install unzip
wget -N hhttp://chromedriver.storage.googleapis.com/71.0.3578.80/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
cp -f chromedriver /usr/bin/
chmod +x chromedriver
在運行過程中ChromeDriver會與Chrome瀏覽器不兼容,重新下載ChromeDriver地址,替換舊ChromeDriver即可。
安裝Firefox對應的geckodriver
selenium3.x開始,webdriver/firefox/webdriver.py的init中,executable_path=”geckodriver”;?
而2.x是executable_path=”wires”;?
所以需要自己配置geckodriver;?
下載地址:
https://github.com/mozilla/geckodriver/releases?
下載后(根據系統版本選擇):
wget?https://github.com/mozilla/geckodriver/releases/download/v0.23.0/geckodriver-v0.23.0-linux64.tar.gz
tar zxvf geckodriver-v0.23.0-linux64.tar.gz
解壓出來,放到系統目錄下面
cp -f geckodriver /usr/bin/
chmod +x geckodriver
測驗驗證
下面的代碼基于python 2.7并以作驗證。
#!/usr/bin/env python
#encoding: utf-8
#description: 測試是否可以正常驅動Chrome
#note: 需要安裝Selenium3,chromedriver等才能正常驅動同版本的Chrome瀏覽器
#date: 2019-01-03from selenium import webdriver
import timeif __name__ == '__main__':driver = webdriver.Chrome()driver.get('https://www.baidu.com')#在百度主頁上搜索關鍵詞Seleniumdriver.find_element_by_id('kw').send_keys('Selenium3')driver.find_element_by_id('su').click()#此處休眠一下再關閉Chrome窗口退出time.sleep(3)driver.quit()#開啟火狐瀏覽器browser = webdriver.Firefox()browser.get('https://news.sohu.com') time.sleep(3)browser.quit()
在命令行運行
python selenium_demo.py
正常情況下,本腳本會先自動打開chrome瀏覽器,打開百度網頁,輸入關鍵詞“kw”,并顯示搜索結果,3秒后關閉chrome;然后再打開火狐瀏覽器,打開搜狐新聞主頁,3秒后關閉。下面是看到的結果的截圖:
?
遇到的問題
1.運行火狐時報如下錯誤
selenium.common.exceptions.WebDriverException: Message: ‘geckodriver’ executable needs to be in PATH.
解決方法:
見上面的方法,去http://docs.seleniumhq.org/download/下載geckodriver最新版,解壓并復制到指定目錄/usr/bin/下面。
參考文獻
[1].https://www.jianshu.com/p/71bbe8acee01
[2].https://www.cnblogs.com/titicia/p/6036572.html
[3].https://blog.csdn.net/qq_41797451/article/details/80272748
[4].https://blog.csdn.net/qq471011042/article/details/79514908
總結
以上是生活随笔為你收集整理的在Ubuntu 14.04.5 LTS上安装python模块selenium 3实录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在Ubuntu 16.04.5 LTS上
- 下一篇: 在Ubuntu 16.0.4.5 LTS