我使用url“ x”并找到下一页按钮,并甚至对其执行.click()。 .click()事件运行正常,我没有发现任何错误。执行.click()时,如何使casperjs重定向到下一页。我曾想过使用casper.open(),但找不到与.click()结合使用的方法
var casper = require('casper').create();
casper.start('url');
casper.then(function() {
if (this.exists('a.j-pagination-next')) { //selector for the next page button
this.click('a.j-pagination-next'); // Click on next page button
//should return the next page url
// this.open()
}
else{
console.log("No such selector") //end of pages or wrong selector
}
});
casper.run();
答案 0 :(得分:0)
单击链接后,CasperJS将打开下一页,无需进行额外的open()
调用。您需要使用then()
或waitFor*()
函数来执行下一页的下一步。
var casper = require('casper').create();
casper.start('url');
casper.then(function() {
if (this.exists('a.j-pagination-next')) { //selector for the next page button
this.click('a.j-pagination-next'); // Click on next page button
}
else{
console.log("No such selector") //end of pages or wrong selector
}
});
casper.then(fucntion(){
console.log("I'm on the next page now");
});
casper.run();
编辑
要获取当前网址,您应该致电this.getCurrentUrl()
:
var casper = require('casper').create();
casper.start('url');
casper.then(function() {
if (this.exists('a.j-pagination-next')) { //selector for the next page button
this.click('a.j-pagination-next'); // Click on next page button
}
else{
console.log("No such selector") //end of pages or wrong selector
}
});
casper.then(fucntion(){
console.log(this.getCurrentUrl());
});
casper.run();