我使用python selenium解析來自超過10,000多個url的大量數據。瀏覽器是Firefox。python selenium,Firefox突然變空白並停止工作
對於每個網址,Firefox瀏覽器都會打開,數據解析後會關閉,並等待5秒鐘,然後再通過Firefox打開下一個網址。
但是,這些天發生了兩次,一切都很順利,突然之間,新打開的瀏覽器是空白的,它根本沒有加載網址。在現實生活中,有時甚至當我手動打開瀏覽器,搜索某些東西時,它也是空白的。
問題是,當發生這種情況時,根本沒有任何錯誤,即使當我編寫except代碼來捕獲任何異常時,同時我使用nohup
命令來運行代碼,它也會記錄任何異常,但根本沒有錯誤。而一旦發生這種情況,代碼將不會再執行,並且許多網址不會被解析....如果我在其他網址上重新運行代碼,它可以正常工作。
這裏是我的代碼(所有10,000+網址是在comment_urls列表):
for comment_url in comment_urls:
driver = webdriver.Firefox(executable_path='/Users/devadmin/Documents/geckodriver')
driver.get(comment_url)
time.sleep(5)
try:
// here is my data parsing code .....
driver.quit() // the browser will be closed when the data has been parsed
time.sleep(5) // and wait 5 secods
except:
with open(error_comment_reactions, 'a') as error_output:
error_output.write(comment_url+"\n")
driver.quit()
time.sleep(5)
與此同時,在數據分析的一部分,是否會有任何異常,我的代碼也將記錄例外並關閉驅動程序,等待5秒鐘。但到目前爲止,根本沒有記錄錯誤。
我試圖在網上找到類似的問題和解決方案,但這些都沒有幫助。
所以,目前,我心裏有2個問題:
- 你有沒有遇到過這個問題,你知道該如何處理呢?是網絡問題還是硒問題或瀏覽器問題?
- 或者是有無論如何在Python中,它可以告訴瀏覽器不加載網址,它會關閉它?
嘗試關閉硬件加速:https://support.mozilla.org/t5/Procedures-to-diagnose-and-fix/Troubleshoot-extensions-themes-and-hardware-acceleration-issues/ta-p/ 1616#w_turn-off-hardware-acceleration –
我從這個解決方案開始,代碼一直在運行,但今天它突然停止,沒有完成。好消息是,這一次,瀏覽器不再崩潰,但有一個彈出窗口,要求安全服務的主密碼並停止了我的代碼。但它沒有告訴哪個安全服務。所以我想知道這是因爲Mac可能有一些安全設置?或者這是我們學校實驗室的安全保護措施?或者其他原因?這臺機器有多個帳戶,我使用的不是主帳戶。任何想法? –
這取決於該頁面和網址的截圖。沒有它,猜測發生了什麼非常困難。 Firefox擁有自己的firefox同步主密碼,但據我瞭解,您不使用selenium瀏覽器(Firefox驅動程序)中的同步。所以這可能是由於網站或校園。 –