1. 程式人生 > >selenium3執行firefox以及配置firefox的下載路徑

selenium3執行firefox以及配置firefox的下載路徑

selenium啟動瀏覽器的時候,是一個不帶任何快取的瀏覽器,如果是用selenium3啟動火狐的時候,跟selenium2的時候啟動chrome一樣,需要載入專門的對應驅動程式geckodriver.exe 其中坑包含驅動的版本和selenium以及firefox版本的相容問題,查詢geckodriver.exe的版本可以去https://github.com/mozilla/geckodriver,檢視每個版本的note就可以了。

另外一個就是配置firefox的下載了。常用的場景是,在瀏覽器中點選一個下載,頁面會彈出一個瀏覽器自帶的視窗,讓你選擇是開啟還是儲存

profile=webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.dir", "d:\\tmp")
profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "binary/octet-stream")
browser.download.folderList  設定成 0 代表下載到瀏覽器預設下載路徑, 設定成 2 則可以儲存到指定目錄。  browser.download.dir  用於指定所下載檔案的目錄。 os.getcwd() 函式不需要傳遞引數, 用於返回當前的目錄。  browser.helperApps.neverAsk.saveToDisk

  指定要下載頁面的 Content-type 值, “binary/octet-stream” 為檔案的型別。下載的檔案不同,這裡的型別也會有所不一樣。如果不清楚你下載的檔案什麼型別,請用Fiddler抓包

關於chrome的,在網上搜索了個https://blog.csdn.net/vinson0526/article/details/51850929

羅列下用法

webdriver.ChromeOptions()
附帶https://sites.google.com/a/chromium.org/chromedriver/capabilities官網用法說明