Как получить истинный URL файла в сети. (Python)

Я использовал VisualSVN, пока Анк не совершил нападки 2.0, и с тех пор, я отказался от VisualSVN. Анк превзошел VisualSVN в функциональности в моем уме, и весь 1.x, перфекта и проблем интеграции не стало.

7
задан TIMEX 17 November 2009 в 22:57
поделиться

4 ответа

Используйте urllib.getUrl ()

редактировать: Извините, я давно этого не делал:

import urllib
urllib.urlopen(url).geturl()

Например:

>>> f = urllib2.urlopen("http://tinyurl.com/oex2e")
>>> f.geturl()
'http://www.amazon.com/All-Creatures-Great-Small-Collection/dp/B00006G8FI'
>>> 
9
ответ дан 6 December 2019 в 23:07
поделиться

Вы должны прочитать ответ, понять, что вы получили 302 (НАЙДЕН), и проанализировать реальный URL-адрес из заголовков ответа, а затем получить ресурс, используя новый URI.

0
ответ дан 6 December 2019 в 23:07
поделиться

Марк Пилигрим советует использовать httplib2 в « Dive Into Python3 », поскольку он обрабатывает многие вещи (включая перенаправления) более разумным способом.

>>> import httplib2
>>> h = httplib2.Http()
>>> response, content = h.request("http://garagaeband.com/3252243")
>>> response["content-location"]
    "http://garageband.com/michael_jackson4.mp3"
2
ответ дан 6 December 2019 в 23:07
поделиться

Я решил ответ.

 import urllib2
    req = urllib2.Request('http://' + theurl)
    opener = urllib2.build_opener()
    f = opener.open(req)
    print 'the real url is......' + f .url
0
ответ дан 6 December 2019 в 23:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: