如何在Wight中配置`--ssl-protocol=any`解决HTTPS网页截图问题
解决Wight + PhantomJS无法截取HTTPS网站截图的问题
你遇到的核心问题是没正确给PhantomJS传递SSL协议参数——Wight模块并不支持你写的protocal(顺便说下这里拼写错了,应该是protocol)这个参数键,要给PhantomJS加命令行选项,得用Wight专门的arguments参数来传递。
正确的代码配置
Wight的构造函数允许通过arguments数组传入PhantomJS的命令行参数,修改你的代码如下:
use strict; use Wight; # 正确配置PhantomJS的SSL协议参数 my %arg = ( phantomjs => 'phantomjs', arguments => ['--ssl-protocol=any'] ); my $wight = Wight->new(%arg); $wight->visit('https://你的目标HTTPS网址'); $wight->evaluate('document.title'); $wight->render('anv.png');
额外扩展提示
如果你的目标HTTPS网站还有SSL证书错误的问题,也可以把忽略证书错误的参数一起加到arguments数组里:
arguments => ['--ssl-protocol=any', '--ignore-ssl-errors=true']
内容的提问来源于stack exchange,提问作者mkHun
相关产品推荐
相关产品推荐

