javascript - 检查网站是否使用 phantomjs 重定向到不同的 URL,仅针对特定网站给出错误

标签 javascript ajax phantomjs

我是前端开发的新手,这个问题可能很微不足道。请耐心等待。

 var page = require('webpage').create(),
 system = require('system');

if (system.args.length === 1) {
  console.log('Usage: useragent.js <some URL>');
  phantom.exit();
}

url = system.args[1];
page.settings.userAgent = 'Mozilla/5.0 (Linux; U; Android 2.3.5; en-gb; HTC Desire HD A9191 Build/GRJ90) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1';
page.open(url,function (status) {
    if (status !== 'success') {
            console.log(url+',,Unable to access network');
    } else {
            var redirectUrl = page.evaluate(function () {
            return document.URL;
            }); 
    }   
    phantom.exit();
});  

当我运行 http://www.bebloom.com 时它工作正常并重定向到 http://mobile.bebloom.com

但是,当我运行 http://www.rueducachemire.com 时,它给出以下错误: http://www.rueducachemire.com/skin/m/1382954776/js/prototype/prototype.js,/js/lib/ccard.js,/js/prototype/validation.js,/js/scriptaculous/effects.js,/js/varien/js.js,/js/varien/form.js,/js/varien/menu.js,/js/mage/translate.js,/js/mage/cookies.js,/js/droplicious.js,/j s/seo_link_crypter.js:748 http://www.rueducachemire.com/:173

最佳答案

这是因为您尝试加载的网页有错误。

尝试使用

page.onError = function (msg, trace) {
    console.log("[ERRO]:"+msg);
    trace.forEach(function(item) {
    console.log('  ', item.file, ':', item.line);
    })
}

你就会知道。

关于javascript - 检查网站是否使用 phantomjs 重定向到不同的 URL,仅针对特定网站给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22032046/

相关文章:

javascript - 如何处理 PhantomJS 中模态框未打开的情况?

javascript - 如何封装 AngularJS 函数但仍使其可测试

ruby-on-rails - Rails Valums Ajax 上传

asp.net - 在 ajax 调用中处理过期的 .NET Forms 身份验证 cookie 的最佳方法?

c# - 当文本框上的 iframe 控件具有焦点时,如何保持页面的滚动位置?

javascript - 如何获取网站的背景颜色?

node.js - 在 Jenkins CI 和 Debian 上使用 ChromeHeadless 的 Karma

javascript - Chrome 中的 Web Audio API 延迟声音失真

javascript - 将项目列表从 $.get() 传递到 MVC Controller

javascript - 正确保存数据到mongoDB