python socket.error: [Errno 10054] 远程主机强迫关闭了一个现有的连接。问题解决方案:
前几天使用python读取网页。因为对一个网站大量的使用urlopen操作,所以会被那个网站认定为攻击行为。有时就不再允许下载。导致urlopen()后,request.read()一直卡死在那里。最后会抛出errno 10054.
这个错误是connection reset by peer.也就是传说的远端主机重置了此连接。原因可能是socket超时时间过长;也可能是request = urllib.request.urlopen(url)之后,没有进行request.close()操作;也可能是没有sleep几秒,导致网站认定这种行为是攻击。
具体解决方案如下面的代码:
[python]
view plain
copy
- import socket
- import time
- timeout = 20
- socket.setdefaulttimeout(timeout)#这里对整个socket层设置超时时间。后续文件中如果再使用到socket,不必再设置
- sleep_download_time = 10
- time.sleep(sleep_download_time) #这里时间自己设定
关注打赏
热门博文
- 记录一举一动:PowerShell几行代码实现定期屏幕截屏
- Linux操作系统资源 大合集【鸿蒙OS Suse 红帽 BSD CentOS Arch Ubuntu】 | 寻找C站宝藏
- Windows操作系统+朝鲜红星+国产麒麟+红旗+渗透专用系统+Oracle专用+技术专栏【资源大合集】 | 寻找C站宝藏
- 你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
- 前女友婚礼,python破解婚礼现场的WIFI,把名称改成了
- 前女友发来加密的 “520快乐.pdf“,我用python破解开之后,却发现。。。
- 【python实战】怎么用python自动登录CSDN
- 记录一举一动:PowerShell几行代码实现定期屏幕截屏
- ❤️Windows系统❤️cmd命令+实用工具 大全❤️完整总结
- 【❤️万字长文总结❤️】一篇学会Redis高可用✔集群✔搭建详细教程
立即登录/注册


微信扫码登录