0
我是一个新手,最近开始与casperjs一起使用phantomjs。我想从iframe获取信息,但phantomjs无法加载它。Phantomjs无法加载iframe
这是我的脚本:
var casper = require('casper').create({
verbose: true,
logLevel: "debug",
waitTimeout: 20000,
retryTimeout: 100,
viewportSize: {
width: 1920,
height: 1080
},
pageSettings: {
"userAgent": 'Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.41 Safari/535.1'
},
localToRemoteUrlAccessEnabled: true
});
casper.start();
casper.open('http://www.badboysbarber.ru/online');
casper.waitForSelector('.y-main-container', function() {
this.echo("Selector appeared.");
});
casper.then(function() {
this.capture('screen.png');
});
casper.run();
因此,幻影抛出一个错误(虽然选择正确定义):
[error] [phantom] Wait timeout of 20000ms expired, exiting.
可能有人帮助我吗?也许我做错了什么?谢谢。
很抱歉,但即使你使用withFrame功能,它无法加载一个iframe。试着使用'this.captureSelector('selector.png','.y-main-container');'而不是'this.echo(this.getHTML());'里面的withFrame函数,你会看到。这是整个问题。 –
此外,您还可以查看[此主题](https://groups.google.com/forum/#!topic/casperjs/AtbXjGnp7M0)。 –
如果您可以获取HTML代码,那么'iframe'显然会加载。你只有'capture'的问题。我用SlimerJS尝试'this.capture('screenshot.png');'withFrame'内部',并且我可以看到'iframe',不仅在SlimerJS正在处理页面时,而且在得到的屏幕截图上:http:// imgur.com/a/gWtiY – Badacadabra