跳转到主要内容

为httplib和urllib2提供增强的HTTPS支持,使用PyOpenSSL

项目描述

  • httplib(Python 2)、http.client(Python 3)以及

  • urllib2(Python 2)和urllib(Python 3)提供HTTPS客户端实现

… 基于 PyOpenSSL。PyOpenSSL 提供了比 Python 默认提供的更全面的 SSL 实现,并且最重要的是,可以使用 pyasn1 完全验证 SSL 对端。

发行版

0.5.1

  • 清理描述文件的处理 - 将此文件的内容拉入 setup() 中

  • 允许夜间构建失败

  • 添加 Trove 版本分类器,使其明确支持的内容

  • 添加 python_requires 以帮助 pip

  • 停止支持已过时的 Python 2.6 和 3.3

感谢 @hugovk 的贡献

0.5.0

  • 修复了主题备用名称处理,以允许具有超过 64 个名称的证书(现在最大为 1024)。感谢 Matt Pegler

  • 修复了 subjectAltName 字符串,以使用字节类型进行正确匹配

  • 将SSL上下文对象更新为默认使用TLS 1.2

0.4.4

  • 更新了测试证书

0.4.3

0.4.2

  • 修复了 ndg.httpsclient.utils.open_url 中的错误 - 重复的打开调用。注意,此错误和修复不会影响此包提供的 httpliburllib2 接口。

0.4.1

  • 在分类器文本中明确引用了Python 3,以便进行Python 3检查工具的检查。

  • 将 LICENSE 文件移动到包中

0.4.0

  • 使代码与 Python 2 和 3 双兼容。

0.3.3

  • 修复了添加到 subjectAltNames 字段的 AnotherName - 添加以支持由 CACert 签发的证书(感谢 Gu1)。

  • 修复了 ndg.httpsclient.utils.main 的 HTTP Basic Auth 选项

  • 修复了 ServerSSLCertVerification,使其能够传递基于函数的回调而不是使用 __call__。在新版本的 OpenSSL(>= 0.14)中,后者因请求 __name__ 属性而失败。

0.3.2

  • 修复了 SubjectAltNames 支持检查 - 只有在安装了 pyasn1 时才应启用。

  • 修复了 open_url:HTTP 请求对象在 if headers is None 块内部创建 - 现在已更正为无论是否创建。

  • 将 http basic auth 支持添加到脚本中。(感谢 Willem van Engen)

0.3.1

  • 扩展了 utils 函数以支持传递附加 urllib2 处理器的关键字。

0.3.0

  • 添加了 ndg.httpsclient.utils.fetch_stream_from_url 函数,并在 open_urlfetch_* 方法中添加了用于发布数据的参数。

  • 修复了 ndg.httpsclient.utils 模块中的 _should_use_proxy 和 open_url 函数

0.2.0

  • 添加了对使用 pyasn1 进行 SSL 验证的支持

  • 修复了小错误 - SSL 证书 DN 前缀匹配

0.1.0

初始发布

先决条件

此软件已针对 Python 2.7、pyOpenSSL 0.13 和 0.14 进行开发和测试。版本 0.4.0 与 pyOpenSSL 0.15.1 和 Python 2.7 及 3.4 进行了测试。pyasn1 对于使用 subjectAltNames 正确进行 SSL 验证是必需的。

安装

可以使用 easy_installpip 执行安装。

运行 ndg_httpclient

一个简单的脚本,用于从指定的 URL 使用 HTTP 或 HTTPS GET 获取数据。

参数

url

要获取的资源 URL

选项

-h, --help

显示帮助信息并退出。

-c FILE, --certificate=FILE

证书文件 - 默认为 $HOME/credentials.pem

-k FILE, --private-key=FILE

私钥文件 - 默认与证书文件相同

-t DIR, --ca-certificate-dir=DIR

受信任的 CA 证书文件目录。

-d, --debug

打印调试信息 - 这可能有助于解决与服务器进行 HTTP 或 HTTPS 访问时的问题。

-p FILE, --post-data-file=FILE

POST数据文件

-f FILE, --fetch=FILE

输出文件

-n, --no-verify-peer

跳过对对等证书的验证。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

ndg_httpsclient-0.5.1.tar.gz (26.7 kB 查看哈希值)

上传时间

构建分布

ndg_httpsclient-0.5.1-py3-none-any.whl (34.0 kB 查看哈希值)

上传时间 Python 3

ndg_httpsclient-0.5.1-py2-none-any.whl (30.8 kB 查看哈希值)

上传时间 Python 2

由以下机构支持