您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python请求中的HTTP重定向代码3XX

python请求中的HTTP重定向代码3XX

requests 为您 处理重定向,请参阅重定向和历史记录

设置allow_redirects=False是否不想requests处理重定向,或者可以检查r.historylist中包含的重定向响应。

演示:

>>> import requests
>>> url = 'https://httpbin.org/redirect-to'
>>> params = {"status_code": 301, "url": "http://codingdict.com/questions/191554"}
>>> r = requests.get(url, params=params)
>>> r.history
[<Response [301]>, <Response [302]>]
>>> r.history[0].status_code
301
>>> r.history[0].headers['Location']
'https://stackoverflow.com/q/22150023'
>>> r.url
'http://codingdict.com/questions/191554'
>>> r = requests.get(url, params=params, allow_redirects=False)
>>> r.status_code
301
>>> r.url
'https://httpbin.org/redirect-to?status_code=301&url=https%3A%2F%2Fstackoverflow.com%2Fq%2F22150023'

因此,如果allow_redirectsTrue,则遵循重定向,返回的最终响应是跟随重定向后的最终页面。如果allow_redirectsFalse,则返回第一个响应,即使它是重定向的。

python 2022/1/1 18:34:38 有225人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶