我想知道有什么方法可以同步单击PhantomJS上的链接(打开链接)。必须先打开第一页,然后单击第一页上的链接转到第二页。这是我使用setTimeout的方法:
var page = require('webpage').create();
var url = "http://domain.tld/index.html";
page.open(url, function (status) {
page.render("1-home.png");
page.evaluate(function() {
// search for element and click it to redirect
document.getElementById("RetailUser").click();
});
// I use setTimeout to wait for firstpage to get loaded
setTimeout(function () {
// do another process on second page
}, 5000);
}
PS:我知道我可以使用CasperJS完成它。但是,如果可能的话,我不想使用CasperJS。
单击链接始终是同步的。由于JavaScript的异步特性,之后发生的事情总是异步的。
等待下一页有多种方法:
setTimeout
,waitFor
,page.onLoadFinished
点击前注册到来加载下一页,本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句