Phantomjs 无法打开网页
Phantomjs does not open web page
我已经开始用casperjs(1.1.0-beta3)+phantomjs(1.9.8)测试campus2020网站。并且面对网站没有打开而是测试冻结的问题。我从phantomjs站点中获取了脚本示例:
var page = require('webpage').create();
page.open('http://informatik.uni-leipzig.de/campus2020', function(status) {
console.log("Status: " + status);
if(status === "success") {
page.render('example.png');
}
phantom.exit();
});
它在其他网站上工作正常。我已经测试了在几个环境中使用phantomjs打开campus2020网站:win 7,Ubuntu 14.04,使用ghostdriver和java selenium webdriver,以及phantomjs,在RHEL 6.6上的Selenium grid中运行。所有这些选项都失败了。我尝试添加用户代理选项并设置超时。什么都没有改变。我也尝试使用基于 selenium webdriver 的测试框架打开这个网站,该框架使用 phantomjs,但它的工作方式相同 - phantomjs 初始化然后冻结。任何想法如何解决这个问题?
更新
现在我的代码如下所示:
var page = require('webpage').create();
console.log("Page is going to be opened...")
page.open('http://informatik.uni-leipzig.de/campus2020/', function(status) {
console.log("Status: " + status);
if(status === "success") {
page.render('example.png');
}
phantom.exit();
});
page.onConsoleMessage = function(msg, lineNum, sourceId) {
console.log('CONSOLE: ' + msg + ' (from line #' + lineNum + ' in "' + sourceId + '")');
};
page.onError = function (msg, trace) {
console.log(msg);
trace.forEach(function(item) {
console.log(' ', item.file, ':', item.line);
})
}
page.onResourceError = function(resourceError) {
console.log('Unable to load resource (#' + resourceError.id + 'URL:' + resourceError.url + ')');
console.log('Error code: ' + resourceError.errorCode + '. Description: ' + resourceError.errorString);
};
page.onResourceTimeout = function(request) {
console.log('Response (#' + request.id + '): ' + JSON.stringify(request));
};
并且没有显示任何错误。
我不知道
为什么会有这个问题,但你可以更新到 PhantomJS 2,它会起作用。目前还没有适用于 Linux 的二进制文件,因此您需要自己构建它。
您还需要更新 CasperJS 版本,因为 1.1-beta3 不支持 PhantomJS 2,但 GitHub 上的主分支支持。
phantomjs --debug=true phantom_test.js
相关文章:
- 从Spring应用程序运行PhantomJS以获取网页缩略图
- Phantomjs 无法打开网页
- Phantomjs 不将网页呈现为 PNG
- 使用phantomjs和Jquery登录到网页
- 使用PhantomJS进行网页抓取
- 如何使用 PhantomJS 测试网页是否返回 404/500
- 使用PhantomJS渲染网页
- 我可以运行网页's在PhantomJS中的JavaScript函数
- 如何使用PhantomJS检测网页的背景颜色
- Phantomjs浏览器不支持网页上的CORS请求
- 网页中的计时器与phantomjs中的计时器是同步的
- 无法在karma中加载phantomjs网页和系统模块
- Phantomjs:是网页单例
- Phantomjs无法使用angularjs加载网页
- 从网页调用phantomjs
- 如何保存当前的网页与casperjs/phantomjs
- 用Ruby在网页中执行JS的最高效方式(HtmlUnit, Celerity, PhantomJS, CasperJS
- 如何使PhantomJS截图尺寸与实际网页相对应
- Phantomjs不加载instagram和pinterest网页
- PhantomJS:如何在网页上执行函数