Python 2.7 每次运行script\python 2.7时,HTTP响应代码都不同
我编写了一个简单的脚本来检查受错误404影响的url 当我用404在url上运行脚本时,它确实会返回正确的响应,但有时它会返回不同的响应(503),我不明白为什么会发生这种情况,我在许多其他url上测试过,结果从来都不一致。有没有人会这么做,并解释为什么我的结果不断变化,即使实际的url状态没有变化 提前感谢您的帮助 我尝试使用以下模块: urllib,urllib2,请求 所有这些都产生了相同的不一致的结果 以下是脚本: 我 响应[404]和响应[503](不正确) 二, 三, 503的原因通常是“服务不可用”,这意味着无论处理您的请求的是什么,都无法找到支持服务来提供响应。这可能是由物理或软件提供的负载平衡器(F5s、HAProxy等)、CDN(Fastly、Cloudflare等)或Apache或Nginx等正在运行但没有适当的应用程序可联系(无论出于何种原因)返回的 因为您的示例中的URL是Amazon URL,所以CDN很可能返回503。CDN(如Fastly)使用清漆,在以下情况下清漆将返回503:Python 2.7 每次运行script\python 2.7时,HTTP响应代码都不同,python-2.7,http-status-code-404,python-requests,urllib2,urllib,Python 2.7,Http Status Code 404,Python Requests,Urllib2,Urllib,我编写了一个简单的脚本来检查受错误404影响的url 当我用404在url上运行脚本时,它确实会返回正确的响应,但有时它会返回不同的响应(503),我不明白为什么会发生这种情况,我在许多其他url上测试过,结果从来都不一致。有没有人会这么做,并解释为什么我的结果不断变化,即使实际的url状态没有变化 提前感谢您的帮助 我尝试使用以下模块: urllib,urllib2,请求 所有这些都产生了相同的不一致的结果 以下是脚本: 我 响应[404]和响应[503](不正确) 二, 三, 503的原因通
- 后端服务器返回了一个503,所以将其转发
- 后端服务器返回了一个不可分析的响应
- CDN从原点读取超时
- CDN连接到源站时超时
- CDN无法读取/写入源站
- 源服务器拒绝了来自CDN的连接
- CDN无法找到到源站的路由
- 原点错误配置了TLS
所以说真的,我们不太可能告诉你为什么你会得到503。您需要对响应进行更多的反思,并查找相关文档。我猜服务器可能过载,并且可能会丢弃一些请求,因此在这种情况下,
503
状态正常非常感谢sigmavirus24!我会更详细地查看回复。
import requests
for url in ['https://www.amazon.es/gp/product/B00QTVL0T4']:
response = requests.get(url)
response.status_code
print(response)
import urllib
result=''
#***** paste url into square bracket ****#
for url in ["https://www.amazon.es/gp/product/B003ODEJZ2",'https://www.amazon.fr/gp/product/B01H801C9C']:
a=urllib.urlopen(url)
e=a.getcode()
if e==404:
result+=(url+" Error_404 "+"\n")
else:
result+=(url+" Link_OK "+"\n")
print result
import urllib2
for url in ['https://www.amazon.es/gp/product/B003ODEJZ2','https://www.amazon.fr/gp/product/B01H801C9C','https://www.amazon.de/dp/B00B8PRE1Y']:
try:
connection = urllib2.urlopen(url)
except urllib2.HTTPError, e:
if e.getcode()==404:
print (url+" Error_404")
else:
print(url+" Link_Ok")