urllib.error.URLError:urlopen error [WinError 10060]

3 篇文章 0 订阅
2 篇文章 0 订阅

基本是按照甲鱼老师的代码敲的,但是有报错。
代码如下:

import urllib.request
url = 'http://www.ip138.com'
proxy_support = urllib.request.ProxyHandler({'http':'1.198.73.139:9999'})
opener = urllib.request.build_opener(proxy_support)
urllib.request.install_opener(opener)
# head = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'}
req = urllib.request.Request(url)
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36')
response = urllib.request.urlopen(req)
html = response.read().decode('GB2312')
print(html)

报错:

urllib.error.URLError: <urlopen error [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。>

解决办法:
有点碰巧我感觉,这个我只是把协议改了一下:
‘http’-》‘https’,我感觉有了https的协议,应该都用https了吧。有必要了解一下这些协议。

增加一点别的知识:
https就是http和TCP之间有一层SSL层,这一层的实际作用是防止钓鱼和加密。防止钓鱼通过网站的证书,网站必须有CA证书,证书类似于一个解密的签名。另外是加密,加密需要一个密钥交换算法,双方通过交换后的密钥加解密。
希望对你有帮助

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值