我正在使用此代码来取消python 3中的url的缩短,但是代码返回的是原先的URL(已缩短),所以我应该怎么做才能使其不被缩短?
import requests
import http.client
import urllib.parse as urlparse
def unshortenurl(url):
parsed = urlparse.urlparse(url)
h = http.client.HTTPConnection(parsed.netloc)
h.request('HEAD', parsed.path)
response = h.getresponse()
if response.status/100 == 3 and response.getheader('Location'):
return response.getheader('Location')
else: return url
答案 0 :(得分:1)
在python3中,response.status/100 == 3
仅对于状态码300为True
。对于任何其他3xx代码,其为False
。使用楼层划分代替response.status//100 == 3
或其他方法来测试重定向代码。
编辑:看来您正在使用SO question posted by @Aybars中的代码,并且在代码段的顶部有注释,说明在python3中的操作。另外,很高兴提到代码的源代码。