今天摸鱼(划掉)看道一个问题蛮有意思的,想来展开说说:

别急,解决办法是有的。
1.这个错误很可能是因为你正在尝试读取一个 JSON 格式的响应,但是实际返回的却是 HTML 格式的响应。
我们检查一下我们的请求是否正确,并且确保请求的 URL 返回的是 JSON 格式的数据。如果确认请求 URL 返回的是 JSON 格式的数据,那么可以使用函数将返回的字节类型数据转换为 JSON 对象。
import json
import urllib.request
response = urllib.request.urlopen(url)
json_str = response.read().decode('utf-8')
json_obj = json.loads(json_str)
2.你用的是标准库ssl模块,那可能确实和前面那位uu说的一样,可能是底层OpenSSL库的问题有关。
解决办法人家也说了,更新一下版本,提醒你一下,如果是使用Linux操作系统,看看484安装了正确版本的OpenSSL库。
这些确认后,问题还是存在,就检查SSL证书的有效性和正确性,看程序有没有正确配置和使用证书。
如果SSL错误是由于证书问题引起的,则可能需要添加以下代码来加载证书:jsonhtml=jsonresponse.read()
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
这将创建一个未经验证的SSL上下文,从而跳过SSL验证过程。
不过这里要说一个,这是一个不安全的解决方案,不应该在生产环境中使用。
3.还有可能,需要换一家HTTP代理了。

买之前,先测试,这个没有人不知道吧,就不废话了。我们来说说成本问题,要如何在一众海量的HTTP代理厂商中,找到一家物美价优的呢?
稍等,问个度娘,大几千万条信息要筛选。

别急,我就看前面几家有那么实力投广的,整理了如下:
|
代表厂商 |
白名单数 |
基础套餐 (元/月) |
平均IP单价 (元/IP) |
|
青果网络 |
256 |
29 |
0.0006 |
|
小象代理 |
5 |
109 |
0.0050 |
|
巨量代理 |
5 |
155 |
0.0049 |
|
豌豆代理 |
5 |
300 |
0.0025 |
|
讯代理 |
1 |
210 |
0.0583 |
|
品易代理 |
20 |
120 |
0.0070 |
|
芝麻代理 |
5 |
360 |
0.0182 |
有需要的自取,记得给个赞。

当Python爬虫遇到SSL错误,可能是由于JSON与HTML响应格式不匹配、SSL库版本过旧或证书问题导致。解决方法包括:检查并确认请求URL返回JSON格式数据、更新OpenSSL库、检查SSL证书的有效性,或者考虑更换HTTP代理。需要注意,跳过SSL验证的解决方案不适用于生产环境。
1193

被折叠的 条评论
为什么被折叠?



