Casperjs如何到达下一页

时间:2013-05-01 21:42:35

标签: casperjs

我刚开始使用casperjs和js尝试让它导航到新页面。

页面上有多个类似的链接,如下所示:

<a href="#" onclick="GoToPage(1)"><font class="IndexLink">2</font></a>
<a href="#" onclick="GoToPage(2)"><font class="IndexLink">2</font></a>
<a href="#" onclick="GoToPage(3)"><font class="IndexLink">2</font></a>
<a href="#" onclick="GoToPage(4)"><font class="IndexLink">2</font></a>
.etc.

我在第1页上试图转到第2页。这是部分代码:

pageNumber=2;   // hard coded for now.
var target = 'a[onclick="GoToPage('+ pageNumber + ')"]';
this.test.assertSelectorExists(target);
this.click(target);

我正在做测试,以确保选择器有效并且测试通过。在调试输出中,我看到请求更改网址,但它似乎转到它所在的同一页而不是第2页。

这里值得的是这段代码的调试输出:

PASS找到一个元素匹配:a [onclick =“GoToPage(2)”] [debug] [phantom]选择器上的鼠标事件'click':a [onclick =“GoToPage(2)”] [debug] [phantom]导航请求:url = http://www.clermontauditorrealestate.org/search/advancedsearch.aspx?mode=advanced#,type = LinkClicked,lock = true,isMainFrame = true [debug] [幻影]网址已更改为“http://www.clermontauditorrealestate.org/search/advancedsearch.aspx?mode=advanced#” [info] [幻影]第5/6步:在2880ms完成。 [info] [幻影]第6/6步http://www.clermontauditorrealestate.org/search/advancedsearch.aspx?mode=advanced#(HTTP 200) [debug] [phantom]捕获页面到/Users/willirl/a-will-1-screenshot.png

这是一个我正在抓取的公共网站,所以我可以发布完整的20行代码,如果这样会有所帮助。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

如果在点击后立即加载新页面,您将如何设置?

如果是,我建议您使用thenClickthen来执行某些操作。 请注意,如果要执行实例的开始和所有后续步骤,则必须为实例调用run()