2013-12-08 70 views
2

我使用Selenium Webdriver + Firefox(25.0.1),在Python 2.7.6(Windows)中下載了大約20個文件(一個一個地從一個網站) ,但是在下載9-10個文件後,Firefox被阻止並且沒有響應......每次都發生這種情況,對我來說真的很奇怪。 我該如何解決它?Selenium Webdriver和Firefox在下載幾個CSV文件後崩潰

這裏是我的測試代碼:

import time 
from selenium import webdriver 

fx = webdriver.FirefoxProfile() 
fx.set_preference("browser.download.manager.showWhenStarting", False) 
fx.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/plain,text/csv,application/csv,application/octet-stream,text/comma-separated-values") 

browser = webdriver.Firefox(firefox_profile=fx) 

for i in range(20): 
    browser.get("http://pic.dhe.ibm.com/infocenter/tivihelp/v41r1/topic/com.ibm.ismsaas.doc/reference/AssetsImportCompleteSample.csv") 
    print i 
    time.sleep(1) 

UPDATE:

我試圖與5個不同的網站,不同的文件類型和大小 - 總是相同的問題...

回答

4

我知道問題是什麼 - 只是Firefox 25.0.1。在Firefox 24上,一切正常。

0

我們正在使用iMacros而不是Selenium,但我認爲我們的解決方案可以在此重複使用:每次下載後重新啓動Firefox,以避免Firefox內存泄漏。

+0

是的,這是解決方案,但我不能這樣做,因爲每次重新啓動Firefox後,我都必須登錄到網站,從中我想下載文件,並在登錄過程中使用Sikuli - 這將花費大量的時間下載20個文件... – mchfrnc

+0

你可以使用firefox profile,用你已經登錄的firefox profile啓動一個驅動程序 – runcode

相關問題