2014-02-25 78 views
0

當你點擊這個特定頁面上的一些鏈接時,GET請求會被javascript啓動。在這種情況下,它是一個文件,所以當你點擊它webdriver.Firefox會出現一個對話窗口,詢問你是否要下載文件。如何捕獲通過JavaScript啓動的Selenium中的GET請求?

是否可以直接捕獲GET請求並將其保存到磁盤或以其他方式自動對話窗口?

回答

0

如果它是一個操作系統對話框,不,你不能使用Selenium來操作它,你需要一個庫,它可以直接提供鉤子到操作系統。要捕獲請求,您需要使用代理來捕獲流量,並再次使用另一個接口與代理進行交互來檢查請求,或者您可以通過Selenium注入一些JS,以修改按鈕的行爲將鏈接返回給您,而不是將瀏覽器導航到它。

+0

通過代理來做它似乎是更簡單的方法去做這件事。你有一個可以處理這個代理的想法,然後檢查請求嗎? – Jonathan

+0

使用代理進行操作並不重要。我們一直在調查同一問題領域的解決方案,但尚未開展工作。有很多簡單的Python http代理可以通過Google獲得,但您只需在其上找到一個或者寫一個好的API來檢索您想要的請求。 –

+0

我設法解決我的問題與Python使用mitmproxy。 – Jonathan