Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript CasperJS/PhantomJS不';无法加载https页面_Javascript_Ssl_Web Scraping_Phantomjs_Casperjs - Fatal编程技术网

Javascript CasperJS/PhantomJS不';无法加载https页面

Javascript CasperJS/PhantomJS不';无法加载https页面,javascript,ssl,web-scraping,phantomjs,casperjs,Javascript,Ssl,Web Scraping,Phantomjs,Casperjs,我知道有些网页PhantomJS/CasperJS无法打开,我想知道这是不是其中之一:。CasperJS给出了一个错误:PhantomJS未能打开页面状态=失败 我试图忽略ssl错误并更改我的用户代理,但我不确定如何确定要使用哪些错误 我现在所做的就是使用casper.start(url,function(){…})whereurl进行基本的casper设置=https://maizepages.umich.edu 该问题可能与最近发现的SSLv3漏洞(狮子狗)有关。网站所有者被迫从其网站上删除

我知道有些网页PhantomJS/CasperJS无法打开,我想知道这是不是其中之一:。CasperJS给出了一个错误:PhantomJS未能打开页面状态=失败

我试图忽略ssl错误并更改我的用户代理,但我不确定如何确定要使用哪些错误


我现在所做的就是使用
casper.start(url,function(){…})
where
url进行基本的casper设置=https://maizepages.umich.edu

该问题可能与最近发现的SSLv3漏洞(狮子狗)有关。网站所有者被迫从其网站上删除SSLv3支持。由于PhantomJS
casperjs --ssl-protocol=tlsv1 yourScript.js
catchall解决方案是在新的PhantomJS版本与其他SSL协议一起出现时使用
any
。但这会使狮子狗漏洞在尚未禁用SSLv3的站点上被利用

casperjs --ssl-protocol=any yourScript.js
替代方法:更新到PhantomJS 1.9.8或更高版本。请注意,更新到PhantomJS 1.9.8会导致一个错误,这对于CasperJS来说尤其恼人

如何验证:在脚本开头添加类似的事件处理程序:

casper.on("resource.error", function(resourceError){
    console.log('Unable to load resource (#' + resourceError.id + 'URL:' + resourceError.url + ')');
    console.log('Error code: ' + resourceError.errorCode + '. Description: ' + resourceError.errorString);
});
如果SSLv3确实存在问题,则错误如下:

错误代码:6。描述:SSL握手失败



另外,当证书出现问题时,您可能还希望使用
--ignore ssl errors=true
命令行选项运行。

很遗憾,即使使用TLSv1,也可能会出现重复的错误。CasperJS还接受其他常见的SSL协议吗?这很奇怪,因为它为我生成了一个合适的SSL协议。如果您使用的是比1.9.7更旧的PhantomJS版本,您可能应该更新。这给了我希望!我用
phantomjs--version
检查了我安装的版本,它给了我1.8.2,但当我检查
brew info phantomjs
时,它说的是1.9.7。我不知道如何找到1.8.2版本的安装位置。我将调查是否可以从命令行更新PhantomJS。我的Casper是1.0.4。作为旁注,您知道如何格式化cookies.json文件以供PhantomJS/CasperJS使用吗?我使用的是casper 1.0.4和phantom 2.0.0,我可以在phantom上加载页面,但不能在casper上加载,casper没有从这个资源加载页面打印错误,选项没有work@FullDecent我从未使用过CasperJS 1.0.4,但我认为它不适用于PhantomJS2。因为casperjs1.1-beta3专门支持PhantomJS<1.x。问一个新问题。