Python+Selenium安裝及環境配置
轉自:https://www.cnblogs.com/sandysun/p/7838113.html
一、Python安裝
Window系統下,python的安裝很簡單。訪問python.org/download,下載最新版本,安裝過程與其他windows軟體類似。記得下載後設置path環境變數,然後Windows命令列就可以呼叫了:
二、Selenium安裝(兩種安裝方法,第一通過pip)
Python3.x安裝後就預設就會有pip(pip.exe預設在python的Scripts路徑下),使用pip安裝selenium:
pip install selenium
後面可以加等號指定selenium的版本:如:pip install selenium==2.53.0
因我已安裝selenium,不可重複安裝。
可使用以下命令檢視是否安裝成功:
pip show selenium
第二種:通過下載selenium-python的原始碼包
下載後,將原始碼包將原始碼包解壓縮到任意路徑
通過cmd命令列進入該目錄,輸入python setup.py install,沒有報錯資訊說明安裝成功
可以通過輸入pip list 驗證是否安裝成功
三、Firefox安裝
因安裝最新Firefox與selenium相容有問題,所以安裝舊版firefox47,記得在firefox安裝外掛firebug和firepath。(此外,記得關閉firefox的自動安裝)
Firefox舊版下載地址:http://ftp.mozilla.org/pub/firefox/releases/
注意:因為Selenium對瀏覽器的相容性問題,瀏覽器不能使用最新的。本次使用的火狐為39版本
2)安裝後關閉自動升級功能,防止升級後不可用
a.開啟火狐瀏覽器,選擇“工具”欄---“選項”
b.在彈出的“選項”框中,我們依次選擇“高階”---“更新”,勾選下面的“不檢查更新”,然後確定退出。
c.找到火狐瀏覽器的配置資料夾, 在配置目錄下找檔案prefs.js
配置資料夾一般路徑為:C:\Users\使用者\AppData\Roaming\Mozilla\Firefox\Profiles
在prefs.js檔案末尾加上7行程式碼,程式碼如下:
user_pref("app.update.migrated.updateDir",false);
user_pref("app.update.lastUpdateTime.browser-cleanup-thumbnails",0);
user_pref("app.update.lastUpdateTime.datareporting-healthreport-lastDailyCollection",0);
user_pref("app.update.disable_button.showUpdateHistory",false);
user_pref("app.update.service.enabled",false);
user_pref("browser.search.update",false);
user_pref("extensions.update.enabled",false);
然後儲存prefs.js,關閉退出。這樣便徹底禁止了火狐瀏覽器更新升級
四、安裝driver ()
Selenium 3以前,使用firefox瀏覽器不需要額外的driver。但是Selenium 3.X 對firefox瀏覽器也需要安裝相應的driver:
Firefox瀏覽器需安裝geckdriver,下載地址:https://github.com/mozilla/geckodriver/releases;
相應的,Chrome瀏覽器需要安裝chromedriver,IE瀏覽器要安裝IEdriver。
driver的路徑可以直接放在python路徑下,我這裡把driver放在了python的Scripts路徑下,同時把script路徑加入環境變數。
五、執行一個簡單的例子
使用python自帶的IDLE工具,輸入以下指令碼:
from selenium import webdriver # 匯入webdriver包
import time
driver = webdriver.Firefox() # 初始化一個火狐瀏覽器例項:driverdriver.maximize_window() # 最大化瀏覽器
time.sleep(5) # 暫停5秒鐘driver.get("https://www.baidu.com") # 通過get()方法,開啟一個url站點
執行以上指令碼,最終開啟百度網址,證明執行成功。
PS,我的執行環境:
Firefox瀏覽器版本:Firefox 47.0
Python:python v3.6.2
Selenium:3.7.0
Geckdriver:v0.15.0