Frage

Ich bin nur zu lernen, Python und ist daran interessiert, wie dies erreicht werden kann. Während der Suche nach der Antwort, stieß ich auf diesen Dienst: http://www.longurlplease.com

Zum Beispiel:

http://bit.ly/rgCbf können umgewandelt werden:

http://webdesignledger.com/ Freebies / the-best-Social-Media-Icons-all-in-one-place

Ich habe mit Firefox eine Inspektion und sehen Sie, dass die ursprüngliche URL ist in der Kopfzeile nicht.

War es hilfreich?

Lösung

Geben Sie urllib2 , die den einfachsten Weg bietet, dies zu tun:

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

Als Referenz willen, beachten Sie jedoch, dass dies auch möglich ist, mit 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'

Und mit PycURL , obwohl ich bin mir nicht sicher, ob dies der beste Weg, es zu tun, ist es mit :

>>> 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'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top