无法使用 Slimerjs、casperjs、phantomjs 打开 https web
Cant open https web using Slimerjs, casperjs, phantomjs
这是我第一次无法使用无头浏览器打开网站,例如:phantomjs、slimerjs 或 casperjs。我只想打开网站。我只是创建非常基本的脚本来打开网站并截取屏幕截图。但是他们中的 3(三)个给了我空白图片。
我尝试使用:
--debug=true
--ssl-protocol=TLSv1.2 (i try each of available protocol)
--ignore-ssl-errors=true
这是我的脚本:
Slimerjs
var page = require("webpage").create();
page.open("https://domain/")
.then(function(status){
if (status == "success") {
page.viewportSize = { width:1024, height:768 };
page.render('screenshot.png');
}
else {
console.log("Sorry, the page is not loaded");
}
page.close();
phantom.exit();
});
phantomjs
var page = require('webpage').create();
page.open('https://domain/', function() {
page.render('screenshot.png');
phantom.exit();
});
casperjs
var casper = require('casper').create({
viewportSize: {width: 950, height: 950}
});
casper.start('https://domain/', function() {
this.capture('screenshot.png');
});
casper.run();
我什至尝试使用屏幕捕获服务来知道它们是否可以打开。但是他们都没有给我任何东西。
我有什么想念的吗?
我在使用 phantomJS 时遇到了这个问题,以下服务参数解决了它:
--ignore-ssl-errors=true
--ssl-protocol=any
--web-security=false
--proxy-type=None
无法在 casperJS 和 slimerJS 方面为您提供帮助,也不知道为什么会这样。
这个问题不是因为 PhantomJS 本身。您正在查看的网站受 F5 network protection
保护
https://devcentral.f5.com/articles/these-are-not-the-scrapes-youre-looking-for-session-anomalies
所以不是页面未加载。是保护机制检测到 PhantomJS 是基于他们已经实施的检查的机器人
最简单的修复方法是使用 Chrome 而不是 PhantomJS
。否则这意味着相当多的调查时间
过去有一些类似的unanswered/answered问题
Selenium and PhantomJS : webpage thinks Javascript is disabled
PhantomJS get no real content running on AWS EC2 CentOS 6
Python POST Request Not Returning HTML, Requesting JavaScript Be Enabled
我将使用我找到的更多详细信息更新此 post。但我的经验告诉我们,选择有效的方法,而不是在这些无法在 PhantomJS 下工作的网站上浪费时间
Update-1
我已尝试将浏览器 cookie 导入 PhantomJS,但仍然无法正常工作。这意味着有一些严格的检查
这是我第一次无法使用无头浏览器打开网站,例如:phantomjs、slimerjs 或 casperjs。我只想打开网站。我只是创建非常基本的脚本来打开网站并截取屏幕截图。但是他们中的 3(三)个给了我空白图片。
我尝试使用:
--debug=true
--ssl-protocol=TLSv1.2 (i try each of available protocol)
--ignore-ssl-errors=true
这是我的脚本:
Slimerjs
var page = require("webpage").create();
page.open("https://domain/")
.then(function(status){
if (status == "success") {
page.viewportSize = { width:1024, height:768 };
page.render('screenshot.png');
}
else {
console.log("Sorry, the page is not loaded");
}
page.close();
phantom.exit();
});
phantomjs
var page = require('webpage').create();
page.open('https://domain/', function() {
page.render('screenshot.png');
phantom.exit();
});
casperjs
var casper = require('casper').create({
viewportSize: {width: 950, height: 950}
});
casper.start('https://domain/', function() {
this.capture('screenshot.png');
});
casper.run();
我什至尝试使用屏幕捕获服务来知道它们是否可以打开。但是他们都没有给我任何东西。
我有什么想念的吗?
我在使用 phantomJS 时遇到了这个问题,以下服务参数解决了它:
--ignore-ssl-errors=true
--ssl-protocol=any
--web-security=false
--proxy-type=None
无法在 casperJS 和 slimerJS 方面为您提供帮助,也不知道为什么会这样。
这个问题不是因为 PhantomJS 本身。您正在查看的网站受 F5 network protection
https://devcentral.f5.com/articles/these-are-not-the-scrapes-youre-looking-for-session-anomalies
所以不是页面未加载。是保护机制检测到 PhantomJS 是基于他们已经实施的检查的机器人
最简单的修复方法是使用 Chrome 而不是 PhantomJS
。否则这意味着相当多的调查时间
过去有一些类似的unanswered/answered问题
Selenium and PhantomJS : webpage thinks Javascript is disabled
PhantomJS get no real content running on AWS EC2 CentOS 6
Python POST Request Not Returning HTML, Requesting JavaScript Be Enabled
我将使用我找到的更多详细信息更新此 post。但我的经验告诉我们,选择有效的方法,而不是在这些无法在 PhantomJS 下工作的网站上浪费时间
Update-1
我已尝试将浏览器 cookie 导入 PhantomJS,但仍然无法正常工作。这意味着有一些严格的检查