python - 使用 Python 请求时出现“连接中止”错误
问题描述
我正在尝试使用以下代码从家乐福网站上抓取价格信息
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',
}
link = 'https://www.carrefour.es/extensor-tp-link-rango-75/366506176/p'
response = requests.get(link, headers=headers, timeout=60)
# Following lines parse response with Beautifulsoup
此代码以“连接中止”错误结束。错误消息在 Linux 和 Windows 上是不同的
在 AWS (Ubuntu) 上运行时,总是会导致错误并显示以下消息
requests.exceptions.ConnectionError: ('Connection aborted.', BadStatusLine("''",))
在我的电脑(Win10)上运行时,有时它可以正常工作,有时会出现错误并显示以下消息
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response',))
我猜这不是由 IP 限制或 User-Agent 引起的:虽然脚本导致无法连接,但我仍然可以使用我的 PC(Win10)访问链接,具有相同的 IP 和 User-Agent。
我被屏蔽了吗?被屏蔽的可能原因是什么?
解决方案
推荐阅读
- sorting - XSLT - 创建一个应该包含唯一和排序数据的变量
- c# - 为什么`XmlDocument.LoadXml()`不适用于命名空间?
- c# - CsvHelper 在 VisualStudio 2013 中非常慢
- regex - 与变量名一起使用时,tcl 正则表达式无法按预期工作
- sql-server - 如何从多个连接查询中删除冗余数据
- ios - Gluon:SettingsService 在 iOS 上崩溃
- c# - 重命名jqGrid中的列,格式为MMYYYY
- c# - 使用 if 语句更改面板颜色
- angular - 将字符串放入主题数组中
- azure-devops - 是否可以用纯 html 编写 VSTS 仪表板