【Python】py3.6请求网站时报错:http.client.RemoteDisconnected: Remote end closed connection without response

当使用Python 3.6进行网络请求时遇到`http.client.RemoteDisconnected: Remote end closed connection without response`错误,通常是由于服务器限制了User-Agent。为解决此问题,可以设置或随机生成User-Agent以模拟浏览器行为,从而避免被识别为爬虫。如果依然报错,可能是IP被封,需要考虑IP代理策略。
摘要由CSDN通过智能技术生成

爬虫代码报错: http.client.RemoteDisconnected: Remote end closed connection without response

原因:服务器限制了User-Agent的访问。

1.什么是user-agent?

 有一些网站不喜欢被爬虫程序访问,所以会检测连接对象,如果是爬虫程序,也就是非人点击访问,它就会不让你继续访问,所以为了要让程序可以正常运行,需要隐藏自己的爬虫程序的身份。此时,我们就可以通过设置User Agent的来达到隐藏身份的目的,User Agent的中文名为用户代理,简称UA。

    User Agent存放于Headers中,服务器就是通过查看Headers中的User Agent来判断是谁在访问。在Python中,如果不设置User Agent,程序将使用默认的参数,那么这个User Agent就会有Python的字样,如果服务器检查User Agent,那么没有设置User Agent的Python程序将无法正常访问网站。

    Python允许我们修改这个User Agent来模拟浏览器访问,它的强大毋庸置疑。

2. 如何突破限制?

答案是生成随机的User-Agent,即随机从预定义的user-agent中取出一个使用。常见的user-agent列表:

from random import randint

USER_AGENTS = [
 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
 "Mo
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值