2016-12-24 87 views
0

我嘗試使用Selenium/PhantomJS/Python寫一個刮板。我使用'get'方法打開一個URL,並在頁面加載超時時用幾秒鐘。Selenium/Phantomjs:如何判斷是否導航?

但有時我發現'get'方法不能打開URL。因此,當我解析網頁時,我得到了與前面的刮擦相同的結果。

在這種情況下,我需要告訴我何時打開一個URL,頁面是否導航或停留在同一頁面。這樣做的正確方法是什麼?

回答

0

假設新頁面具有不同的URL,您可以在瀏覽器/驅動程序上檢查attribute current_url

+0

嗨,我想知道更多關於此。此屬性current_url設置爲新的URL?當它開始接收來自服務器的響應,或在頁面被完全加載後?這對於在緩慢的網絡環境中知道會有所幫助。 –

+0

對於依賴於JavaScript的許多頁面而言,頁面「完全加載」不存在。對我而言(但我只用我的程序刮掉了一兩百個不同的頁面),但這從來都不相關。但是你不應該發佈新的問題(甚至是相關的)作爲對答案的評論。如果完全發佈一個新問題,**描述你嘗試過的**,以及爲什麼你不能自己決定自己的答案。這就是這個網站的工作原理。不要試圖將評論用作論壇的替代品。 – Anthon

+0

Anthon,謝謝你的回答。以下是本網站導覽頁面中描述的評論用法:「使用評論來詢問更多信息或澄清問題或答案。」我的問題是爲了澄清你的答案,所以我認爲它是適當的。我會嘗試你的建議並回來。謝謝。 –