【问题标题】:Multiple page cannot be opened in queryselector.click in phantomjs when the link is opened in new window(target=_blank)在新窗口中打开链接时,无法在queryselector中打开多个页面。在phantomjs中单击(目标=_空白)
【发布时间】:2017-11-15 05:27:45
【问题描述】:
phantomjs 中无法读取第二页——我的代码如下 var webPage = require('webpage');
var page = webPage.create();
page.onLoadFinished = function(){

var title = page.evaluate(function()
{
返回 document.querySelector("#link1").innerText;
});
控制台.log(标题);

page.evaluate(函数(args)
{
document.querySelector("#link1").click();

});

page.onLoadFinished = function(){

var title1 = page.evaluate(function()
{
return document.querySelector("#div1").innerText;
});
console.log(title1);
幻影.exit();
};
};

page.open('http://staging.eubookingsdata.com/scrape1.php', function(status) {

});
这里的第一页是“http://staging.eubookingsdata.com/scrape1.php” 我想在“http://staging.eubookingsdata.com/scrape2.php”中阅读 div 的内容 一切正常,但是当我在 scrape1.php“链接”中添加 target="_blank" 时它停止工作。 scrape1.php

点击
正文>
scrape2.php


你好世界



标签: phantomjs


【解决方案1】:

var webPage = require('webpage');
var page = webPage.create();
page.onLoadFinished = function() //第一级

{

var title = page.evaluate(function()
{
返回 document.querySelector("#link1").innerText;
});
控制台.log(标题); //1级



//var newPage = webPage.create();
//var page1=page.pages[0];

page.evaluate(function(args){ //第一级

document.querySelector("#link1").click();

});


};
page.onPageCreated = function(newPage){
newPage.onLoadFinished = function(status){ //第二级
控制台.log(状态);
var title1 = newPage.evaluate(function()
{
return document.querySelector("#div1").innerText;
});
console.log(title1);//二级
幻影.exit();
};
};
page.open('http://staging.eubookingsdata.com/scrape1.php', 函数(状态)

{
console.log("page1");

});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-03
    • 2015-02-09
    • 2011-02-03
    • 1970-01-01
    相关资源
    最近更新 更多