Python请求响应504

时间:2017-02-02 23:33:46

标签: python python-requests

我正在学习Python,我正在尝试使用命令请求访问网站。我正在做以下事情:

import requests
requests.get("http://www.charitystars.com")

但是我得到<Response [504]>,这应该是一个错误,因为汤命令soup = BeautifulSoup(r.content)返回一个空行。我尝试了其他网站,我得到<Response [200]>,并且汤有效。所以我想知道为什么命令在第一个网站上不起作用,以及Response 504实际意味着什么。

2 个答案:

答案 0 :(得分:5)

此页面不喜欢脚本/漫游器,它会检查标题user-agent

它还可能需要此信息才能显示正确的页面 - 桌面,平板电脑,smartfon不同。

import requests

headers = {'User-Agent': 'Mozilla/5.0'}

r = requests.get("http://www.charitystars.com/", headers=headers)

print(r.status_code)

BTW: requests默认使用"User-Agent": "python-requests/2.12.1"

您可以使用门户网站http://httpbin.org查看您的请求。

import requests

r = requests.get("http://httpbin.org/get")

print(r.text)

答案 1 :(得分:0)

我收到负载平衡超时错误504。解决方案是在后台运行受影响的功能。我的云提供商提供了此功能,请检查您的情况。

此外,您的云提供商可能拒绝访问该网站。检查他们是否有白名单。

希望有帮助。