Python:找到 URL 的第一个重定向
Python: Find First Redirect of URL
在 Python 中,我如何才能找到第一个重定向
的 URL
即如果 URL 从 A -> B -> C 重定向,我只想 return url B
urllib
好像只有return最后的url不过我想挂个中介URL
我不确定您是否致力于使用 urllib2,或者这是否只是您尝试的第一件事。
如果您愿意使用请求:
import requests
url = 'someurl'
r = requests.get(url)
print("first redirect",r.history[0].url)
print('full history')
for n,h in enumerate(r.history):
print(n,h.url)
您可以使用 h.status_code
过滤掉未重定向的内容
例如
codes_i_want = [301,some_code,some_other_code]
result = [h for h in r.history if h.status_code in codes_i_want]
if(result):
print(result[0])
在 Python 中,我如何才能找到第一个重定向
的 URL即如果 URL 从 A -> B -> C 重定向,我只想 return url B
urllib
好像只有return最后的url不过我想挂个中介URL
我不确定您是否致力于使用 urllib2,或者这是否只是您尝试的第一件事。
如果您愿意使用请求:
import requests
url = 'someurl'
r = requests.get(url)
print("first redirect",r.history[0].url)
print('full history')
for n,h in enumerate(r.history):
print(n,h.url)
您可以使用 h.status_code
过滤掉未重定向的内容例如
codes_i_want = [301,some_code,some_other_code]
result = [h for h in r.history if h.status_code in codes_i_want]
if(result):
print(result[0])