尝试抓取网站时重试后,我收到以下错误。
[<twisted.python.failure.Failure OpenSSL.SSL.Error: [('SSL routines', 'ssl3_check_cert_and_algorithm', 'dh key too small')]>]
我尝试使用Scrapy中可用的每种SSL方法,但结果相似。当我在Chrome中访问该网站时,该页面似乎不安全(HTTPS已损坏),但我仍然可以绕过该错误。使用python请求的行为相同(我可以通过将verify设置为False来获取站点内容)。
有没有解决方法?我不能像在python请求中那样关闭SSL验证吗?
P.S。共享站点URL没有意义,因为它只允许来自列入白名单的IP的请求。
答案 0 :(得分:-1)
禁用验证无济于事,因为这不是证书验证的问题。可以帮助改变所使用的密码,即禁用DH密码,以便不使用受弱DH密钥(logjam攻击)影响的代码。使用旧版本的OpenSSL还有助于防止僵局攻击。
不幸的是,似乎没有明显的方法来指定在Scrapy中使用的密码集。如果挂钩到Twith或OpenSSL库,也许可以找到一个。