python爬虫时出现ConnectionError时简单的解决方案

今天在学习爬虫的时候报错ConnectionError: HTTPConnectionPool(host=‘fanyi.www.baidu.com’, port=80): Max retries exceeded with url: /basetrans (Caused by NewConnectionError(’: Failed to establish a new connection: [Errno 11001] getaddrinfo failed’))
看了网上一些教程,大致有以下几种原因:

  1. 原因是请求头(Requests Headers)的Connection参数默认为keep-alive,导致连接失败
    在这里插入图片描述解决方案:在headers字典中添加Connection键,并把它的值修改为close`
headers={"Connection":"close"}

2.原因在于访问太过频繁导致ip被封
解决方案:更改user-agent,比如chrome浏览器可以模拟手机网页,相应的user-agent也会改变
python爬虫时出现ConnectionError时简单的解决方案_第1张图片也可以使用代理ip,具体方法可以自行百度一下

3.可能是url与请求头headers不一致所致,可以检查相关信息来解决

你可能感兴趣的:(笔记)