2010-01-20 88 views
6

我在Python中使用urllib.urlretrieve下載網站。儘管有些網站似乎不希望我下載它們,除非它們在自己的網站上有適當的推薦人。有沒有人知道我可以在Python的庫或外部庫中設置引用鏈接的方式。在Python中設置引用URL urllib.urlretrieve

回答

3

urllib使得用請求發送任意標題變得困難;你可以使用urllib2,它可以讓你建立和發送一個Request對象與任意頭(當然包括 - 哀嘆拼寫; - ) - Referer)。不提供urlretrieve,但如果您想要(直接或例如通過shutil函數),只需要urlopen,然後將生成的類文件對象複製到磁盤即可。

3

還通過使用urllib2build_opener你可以這樣做:

import urllib2 
opener = urllib2.build_opener() 
opener.addheaders = [('Referer', 'http://www.python.org/')] 
opener.open('http://www.example.com/')