Python的:转换TinyURL的那些(bit.ly,TinyURL的,ow.ly),以完整的URL

StackOverflow https://stackoverflow.com/questions/748324

  •  09-09-2019
  •  | 
  •  

我刚学Python和有兴趣如何可以完成。在寻找答案,我碰到这个服务来: http://www.longurlplease.com

例如:

http://bit.ly/rgCbf 可以转化为:

http://webdesignledger.com/赠品/中条最佳社交媒体图标,所有功能于一身的就地

我没有与Firefox一些检查和看到原始URL不是在头中。

有帮助吗?

解决方案

输入 urllib2 ,它提供了这样做的最简单的方法:

>>> import urllib2
>>> fp = urllib2.urlopen('http://bit.ly/rgCbf')
>>> fp.geturl()
'http://webdesignledger.com/freebies/the-best-social-media-icons-all-in-one-place'

有关参考起见,然而,注意,这也可以与 httplib

>>> import httplib
>>> conn = httplib.HTTPConnection('bit.ly')
>>> conn.request('HEAD', '/rgCbf')
>>> response = conn.getresponse()
>>> response.getheader('location')
'http://webdesignledger.com/freebies/the-best-social-media-icons-all-in-one-place'

和与 PycURL ,虽然我不知道这是用它来做到这一点的最好办法:

>>> import pycurl
>>> conn = pycurl.Curl()
>>> conn.setopt(pycurl.URL, "http://bit.ly/rgCbf")
>>> conn.setopt(pycurl.FOLLOWLOCATION, 1)
>>> conn.setopt(pycurl.CUSTOMREQUEST, 'HEAD')
>>> conn.setopt(pycurl.NOBODY, True)
>>> conn.perform()
>>> conn.getinfo(pycurl.EFFECTIVE_URL)
'http://webdesignledger.com/freebies/the-best-social-media-icons-all-in-one-place'
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top