python-requests:限制重定向的次数

ron*_*man 4 python python-requests

有没有办法限制执行GET时python请求将遵循的重定向数量?

我知道 allow_redirects=False,但这只是防止重定向一起.我正在寻找一种方法来跟踪重定向,最多可达到一些跳数.

# What I know how to do:
resp = requests.get(url)  # follows redirects "infinitely"
resp = requests.get(url, allow_redirects=False)  # follows no redirects

# What I'm trying to do:
resp = requests.get(url, max_redirects=3)  # follow up to 3 redirects
Run Code Online (Sandbox Code Playgroud)

谢谢!

Ali*_*lik 7

您必须创建Session对象并将max_redirects变量设置为3

session = requests.Session()
session.max_redirects = 3
session.get(url)
Run Code Online (Sandbox Code Playgroud)

TooManyRedirects 如果请求超过最大重定向次数,则会引发异常.

相关的github问题讨论为什么你不能max_redirects按照请求设置https://github.com/kennethreitz/requests/issues/1300