我在Python中尝试了以下代码
url="http://www.realtor.com/realestateandhomes-search/Pittsburgh_PA/type-single-family-home/price-na-30000/sby-1/"
r=requests.get(url)
但它会引发情欲
File "C:\Users\Dana\AppData\Local\Programs\Python\Python35-32\lib\site-package
s\requests\sessions.py", line 630, in send
history = [resp for resp in gen] if allow_redirects else []
File "C:\Users\Dana\AppData\Local\Programs\Python\Python35-32\lib\site-package
s\requests\sessions.py", line 630, in <listcomp>
history = [resp for resp in gen] if allow_redirects else []
File "C:\Users\Dana\AppData\Local\Programs\Python\Python35-32\lib\site-package
s\requests\sessions.py", line 111, in resolve_redirects
raise TooManyRedirects('Exceeded %s redirects.' % self.max_redirects, respon
se=resp)
requests.exceptions.TooManyRedirects: Exceeded 30 redirects.
如有任何帮助,将不胜感激
这仅仅意味着你的请求得到了一个重定向的响应(你试图访问的页面现在位于一个新的位置)。
requests
库在默认情况下理解这一点,并且不返回此结果,而是尝试对新位置执行另一个请求。再次返回重定向等为了避免永远不从
requests
调用中出来,在中止进程之前,对允许的重定向次数有一个限制。我假设您试图请求的站点上有错误,可能是循环重定向。
您可以调整
requests
库,使其不遵循重定向,而是返回重定向,这样就不会得到此错误(当然是重定向响应):如果不包含服务器所期望的头,则偶尔会发生这种情况。如果使用requests.get()中提供的附加选项模拟头、负载、用户代理等,则不太可能出现此错误。
示例:
相关问题 更多 >
编程相关推荐