【问题标题】:How does Python urllib2 https work?Python urllib2 https 是如何工作的?
【发布时间】:2013-08-05 16:18:12
【问题描述】:

查看 urlib2 的文档,它说它支持 HTTPS 连接。但是,不清楚的是您如何启用它,例如使用 HTTPBasicAuth 并将 HTTP 替换为 HTTPS,还是只需要在实际打开连接时在 url 中传递 HTTPS?

【问题讨论】:

    标签: python https urllib2


    【解决方案1】:

    您可以在打开连接时简单地传递一个 HTTPS URL。注意 Urllib2 文档中的警告:

    “警告 HTTPS 请求不会对服务器的证书进行任何验证。”

    因此,我建议使用Python Requests 库,它提供了更好的界面和许多功能,包括 SSL 证书验证和 Unicode 支持。

    更新 20150120:

    Python 2.7.9 添加了 HTTPS 主机名验证作为标准。查看https://docs.python.org/2/library/httplib.html#httplib.HTTPSConnection中的更改评论

    感谢@EnnoGröper 的通知。

    【讨论】:

    • 缺乏证书验证不是问题,因为这是用于内部系统的,但“规则”指出,没有 SSL/SSH 连接就不能传输密码。谢谢
    • @Bickerx2 查看更新。您可能会发现请求更易于使用。
    • 我确实查看了请求,但我没有使用请求的选项,因为我必须安装脚本的位置,只有标准库可用。此外,添加一个额外的库也不值得为获得“否”响应而付出额外的努力
    • docs 中的警告消失了,至少使用 2.7.9 我很确定,urllib2.urlopen 默认会验证证书。
    猜你喜欢
    • 2019-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    • 2016-07-15
    • 2018-02-04
    • 2012-09-09
    • 2010-11-05
    相关资源
    最近更新 更多