版本
Python3.5.2 \ Selenium3.4.0 \ FireFox51.0
安裝setuptools與pip
- setuptools是Python的distutilsde工具的增強工具,可以更方便的創建和發布Python包。
- 在最新的Python安裝包中已經集成了pip,所以不需要單獨下載安裝,沒想到到后來程序運行,是一個大坑。
- 第一個坑:下載setuptools-35.0.2.zip最新版本,通過python命令執行setup.py進行安裝:進入到解壓后的文件夾cd -python setup.py install 使用此方法會報錯,解決使用:pip install setuptools 成功安裝。
安裝Selenium
- 前面安裝pip是為了更方便的安裝Selenium包,通過pip命令可直接安裝:pip install Selenium。第二個坑Selenium安裝成功,但是在最下面會報一個警告,大致的就是說pip的版本問題。
Paste_Image.png
又重新更新了下pip:python -m pip install --upgrade pip
Paste_Image.png
成功 !!繼續~
編寫第一個自動化腳本
Paste_Image.png
- 第三個坑:原以為可以運行了, 沒想到蹦出來個錯誤,大致是說geckodriver需要配置在環境變量中。
Paste_Image.png
- 得了,別廢話,下載吧 geckodriver下載地址
- 原來Selenium3有了一些比較大的改變,其中之一就是Webdriver從瀏覽器中分離出來了,所以需要單獨安裝。
- 第四個坑:下載的最新版本,緊跟潮流喵~geckodriver-v0.16.0-win64.zip,解壓后裝在任意文件夾都可以,然后再配置環境變量Path,丫的,又報錯,一直在提示 “selenium.common.exceptions.WebDriverException: Message: Unable to find a matching set of capabilities”。在網上查閱資料,大部分說是版本不兼容,火狐版本太高,這各種卸載,各種安裝啊,欲哭無淚,還是報同樣的錯誤,最后才知道,geckodriver版本裝的高了,應該安裝v0.15.0版本。
- 接著需要將Firefox的可執行程序路徑也添加到環境變量中,最后添加完了所有環境變量。
- 最后重啟IDLE,運行腳本,bingo~成功!!!
- 這段代碼做了以下幾件事:
1 導入Selenium Webdriver包,從而使用Webdriver API
2 獲得瀏覽器對象,賦值給變量driver
3 通過get()方法,向瀏覽器發送網址
4 通過頁面元素的定位,定位到百度輸入框,并通過鍵盤輸入方法send_keys(),向輸入框中輸入"Selenium2"
5 通過id定位百度一下搜索按鈕,并發送click()單擊事件
6 退出并關閉瀏覽器
安裝瀏覽器驅動
- 各個瀏覽器驅動下載地址
- 安裝Chrome瀏覽器驅動,下載ChromeDriver_win32.zip,無論你的操作系統是32位還是64位的,都管用。解壓后,將chromedriver.exe放到 C:\Python35\目錄下,之前已經將 C:\Python35放到系統環境變量Path下,所以這里不需要再次添加。
- 安裝IE瀏覽器驅動,下載IEDriverServer_win32_xxx.zip,解壓后同樣放到C:\Python35\目錄下。
- 安裝成功后可以用IE和Chrome來替換Firefox運行上面的例子:
將driver=webdriver.Firefox()
替換為:
driver=webdriver.Chrome()
或:
driver=webdriver.Ie()
程序正常運行。