Selenium+python各種填坑

版本

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()
    程序正常運行。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容