使用 python 请求模块时出现 HTTP 503 错误
Posted
技术标签:
【中文标题】使用 python 请求模块时出现 HTTP 503 错误【英文标题】:HTTP 503 Error while using python requests module 【发布时间】:2018-06-03 07:09:23 【问题描述】:我正在尝试发出 HTTP 请求,但我目前可以通过 Firefox 浏览器响应 503 错误访问的网站。代码本身非常简单。在网上搜索后,我在请求中添加了user-Agent
参数,但它也没有帮助。有人可以解释我如何摆脱这个 503 错误吗?
顺便说一句,我想根据 btc 的价格制作自己的警报系统。
import requests
url = "https://www.paribu.com"
header ='User-Agent': 'Mozilla/5.0 (Windows NT x.y; Win64; x64; rv:10.0) Gecko/20100101 Firefox/10.0 '
response = requests.get(url,headers = header)
print(response)
【问题讨论】:
503 服务不可用。在这种情况下,看起来网页有一个缓冲屏幕,可以防止您抓取 503 出现在我的第一次尝试中。所以我认为他们没有将我列入黑名单,我认为正如你所说,他们以某种方式阻止了网络抓取。 我也有同样的问题。使用 curl 可以正常工作,来自 Java 和 Chrome 的请求也可以正常工作。所以我认为请求模块存在问题。 【参考方案1】:503 表示服务器超载: https://httpstatuses.com/503
这不是您的代码的问题,而是您尝试访问的服务器的问题。
【讨论】:
这并不意味着服务器超载。只是表示服务器不可用 但是我可以通过浏览器访问该网站。不是说服务器没问题吗? 不一定。它返回 503 是因为他们想阻止您抓取该网站【参考方案2】:我遇到了同样的问题。在您的代码中使用它。
headers = 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/41.0.2228.0 Safari/537.36',
r = requests.post(url, headers=headers)
r.raise_for_status()
Found from this site
【讨论】:
谢谢,看起来他们正在阻止爬虫 :)【参考方案3】:状态码 503 表示服务器停机进行维护。请稍后再试。
【讨论】:
【参考方案4】:我的代码是
我正在尝试 Amazon.co.uk - 所以阻止 get.request 对他们来说更有意义,服务不会中断。
【讨论】:
嗨,欢迎来到 ***。您似乎忘记添加代码了,请将其编辑到您的问题中。以上是关于使用 python 请求模块时出现 HTTP 503 错误的主要内容,如果未能解决你的问题,请参考以下文章
Python Post 请求 - 通过 Outlook API 发送文件时出现 415 错误
在python中使用for循环时出现JSONDecodeError [重复]
导入类中的模块,但是在类方法中使用模块时出现NameError