casperjs找不到弹出选择器

时间:2016-03-31 10:08:14

标签: javascript popup casperjs

我有一个casperjs脚本,可以登录页面,然后点击“观看视频”按钮,然后启动带有视频的弹出窗口。然后我尝试使用casper.withPopup切换到弹出窗口的上下文。但是我无法打印弹出窗口的URL以及单击播放按钮。 似乎我没有进入弹出窗口的DOM上下文。

var casper = require('casper').create();

casper.options.waitTimeout = 90000;

casper.userAgent('Mozilla/5.0 (Windows NT 6.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.109 Safari/537.36');

casper.viewport = {width: 1366, height: 768}; 

var x = require('casper').selectXPath;


url1 = '--------';

casper.start(url1, function() {
this.sendKeys("#email","----");
this.sendKeys("#password","---");


casper.wait(1000);
});
casper.thenClick(x('/html/body/section/div/div/form/div/div/div[3] /input'));


// use XPAth

casper.thenClick(x('/html/body/nav/div/ul/li[2]/a'),function() { 


casper.wait(700,function() {
console.log('waited 700 ms');

pres_preurl = this.getCurrentUrl();
console.log('url before video:'+pres_preurl);

});
});



casper.then(function() {

this.clickLabel("Watch");

console.log('watch');
casper.wait(90000);

this.withPopup(/popup/, function() {

this.waitForSelector('video[id="video"]',function() {
this.evaluate(function() {
    console.log(this.getCurrentUrl());
    document.querySelector('video[id="video"]').click();
    });
});
});
});




casper.run();

0 个答案:

没有答案