gpt4 book ai didi

python - urllib.request SSL 连接 Python 3

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:44 25 4
gpt4 key购买 nike

我正在尝试从这个 url 解析数据:

https://www.chemeo.com/search?q=show%3Ahfus+tf%3A275%3B283

但我认为这是失败的,因为该网站使用 SSL TLS 1.3。如何启用我的 Python 脚本,以便在 urllib.request 中使用 SSL 进行连接?

我试过使用 SSL 上下文,但这似乎不起作用。

这是我的 Python 3.6 代码:

import urllib.request
import ssl
from bs4 import BeautifulSoup

scontext = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
chemeo_search_url = "https://www.chemeo.com/search?q=show%3Ahfus+tf%3A275%3B283"

print(chemeo_search_url)

with urllib.request.urlopen(chemeo_search_url, context=scontext) as f:
print(f.read(200))

最佳答案

尝试:

ssl.PROTOCOL_TLS

From the docs on "PROTOCOL_SSLv23":

Deprecated since version 2.7.13: Use PROTOCOL_TLS instead.

注意:

确保安装了 CA 证书包,就像在最小版本的 alpine linux、busybox 上一样,必须安装证书。此外,有时如果 python 没有使用 SSL 支持编译,则可能有必要这样做。还取决于已编译的 OpenSSL 版本将决定哪些 SSL 功能可用。

另请注意,chemeo 站点不使用 TLSv1.3 ...它仍处于试验阶段,在撰写本文时还不是很安全,他们目前支持使用“letsencrypt”作为其证书提供者的 tls 1.0、1.1、1.2 .

enter image description here

关于python - urllib.request SSL 连接 Python 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47516722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com