2016-12-24 85 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,谢谢你的回答。以下是本网站导览页面中描述的评论用法:“使用评论来询问更多信息或澄清问题或答案。”我的问题是为了澄清你的答案,所以我认为它是适当的。我会尝试你的建议并回来。谢谢。 –