我有一个页面可能会以某种方式受到无头浏览器的保护,但我当然不确定。问题是,在浏览器中它加载得很好,javascript执行,一切都很好。当使用 phanthomjs 时,它不会,似乎javascript没有执行或出现其他一些问题。
我怎么能找到它?你建议什么刮去那个页面?
答案 0 :(得分:1)
这是一个基本的phantomjs脚本,如果对指定的url的请求成功,它将打印到控制台。这可以帮助您查看是否可以访问该页面。如果你取得了成功,你应该能够抓住。那会让我觉得你的JS导致了问题,而不是无头浏览器。如果你不成功'你可以设置userAgent设置,让它看起来像是一个真正的浏览器。
var page = new WebPage();
// Uncomment the next line to set the user agent.
//page.settings.userAgent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36';
page.open('http://www.google.ca', function (status) {
if (status !== 'success') {
console.log('Unsuccessful');
} else {
console.log('Successful')
}
phantom.exit();
});
将http://www.google.ca
更改为您想要的网址。