mam napisać tę funkcję:jak sprawdzić, czy urllib2 postępuje zgodnie z przekierowaniem?
def download_mp3(url,name):
opener1 = urllib2.build_opener()
page1 = opener1.open(url)
mp3 = page1.read()
filename = name+'.mp3'
fout = open(filename, 'wb')
fout.write(mp3)
fout.close()
Ta funkcja podjęcia url i nazwy zarówno jako ciąg. Następnie pobierzesz i zapiszesz plik MP3 z adresu URL, podając nazwę zmiennej.
URL ma postać http://site/download.php?id=xxxx gdzie xxxx jest identyfikatorem mp3
jeśli to id nie istnieje witryny przekierowuje mnie do innej strony.
Pytanie brzmi: jak mogę sprawdzić, czy ten identyfikator istnieje? Próbowałem sprawdzić, czy istnieje url z funkcji takich jak to:
def checkUrl(url):
p = urlparse(url)
conn = httplib.HTTPConnection(p.netloc)
conn.request('HEAD', p.path)
resp = conn.getresponse()
return resp.status < 400
Ale to nie wydaje się pracować ..
Dziękuję
Czy nie byłoby **, jeśli response.geturl()! = Url: **? – alfadog67