我正在尝试查看 pricipal.com 的重定向。使用开发人员工具时,我可以看到重定向失败,状态码为400.但是,使用python时,我看到状态码:200
这是我正在使用的代码:
import requests
import urllib.request, urllib.error
import vertica_python
r = requests.get('http://pricipal.com')
t = requests.ReadTimeout()
try:
print('#################')
# d = geturl(r)
# print(r.status_code)
print("{}: {}".format(r, r.status_code))
print('URL: ' + r.url)
print("{}: {}".format('History: ', r.history))
print("{}: {}".format(r, r.status_code))
print('#################')
except requests.ConnectionError:
# prints the int of the status code. Find more at httpstatusrappers.com :)
print('######FAIL#######')
print(r + ": failed to connect")
print(r.ConnectionError)
print(r.url)
print('Read timeout: ' + t)
print('#################')
print('done')
如何修改代码以正确显示重定向的状态代码为400而不是200?
谢谢!
答案 0 :(得分:0)
默认情况下,requests
follows redirects transparently。要在没有重定向的情况下获得初始响应,您可以检查r.history
,或禁用这样的重定向:
import requests
r = requests.get('http://principal.com', allow_redirects=False)
print(r)