0
我想用Python + Selenium + BS4來抓取一個動態內容(javascript)頁面,該頁面隨機阻止我的請求(軟件可能是:F5 AMS)。Chrome驅動程序如何工作,但Firefox,PhantomJS和HTMLUnit沒有?
我設法繞過這個東西,通過更改我指定的每個瀏覽器的用戶代理。事情是,只有Chrome驅動程序可以通過拒絕。相同的代碼,調整爲PhantomJS或Firefox驅動程序被阻止不斷,就像我甚至沒有更改用戶代理。
我必須說我也是多線程,也就是說,同時啓動4個瀏覽器。
爲什麼會發生這種情況? Chrome Webdriver必須提供什麼功能才能通過防火牆,其他則不會?
我真的需要得到結果,因爲我想更改爲Firefox,因此,我想讓Firefox像Chrome那樣通過。
有些網站具有抓取保護功能,即使您僞造了用戶代理,也可以輕鬆檢測瀏覽器的類型。每種Javascript行爲之間有典型的區別,可用於檢測您的實際瀏覽器。這項工作是保護刮擦,我認爲他們做得很好。很難知道他們正在使用什麼樣的組合,並需要從你身邊得到體面的研究時間。 –
但是,如果Chrome驅動程序每次更改用戶代理時都會繞過安全性,那該怎麼辦?我不能用這個事實來使Firefox工作嗎? (只知道更改geckodriver中的用戶代理不起作用) –