fetcher biraz daha adam olsun..
This commit is contained in:
+16
-6
@@ -113,12 +113,8 @@ class Fetcher:
|
|||||||
from httplib import HTTPException
|
from httplib import HTTPException
|
||||||
|
|
||||||
try:
|
try:
|
||||||
request = urllib2.Request(self.url.uri)
|
fileObj = urllib2.urlopen(self.formatRequest\
|
||||||
if self.username:
|
(urllib2.Request(self.url.uri)))
|
||||||
request.add_header('Authorization', 'Basic %s' %
|
|
||||||
encodestring('%s:%s' %
|
|
||||||
(self.username, self.passwd)))
|
|
||||||
fileObj = urllib2.urlopen(request)
|
|
||||||
headers = fileObj.info()
|
headers = fileObj.info()
|
||||||
|
|
||||||
except ValueError, e:
|
except ValueError, e:
|
||||||
@@ -137,6 +133,20 @@ class Fetcher:
|
|||||||
dest = open(os.path.join(self.filedest, self.url.filename()) , "w")
|
dest = open(os.path.join(self.filedest, self.url.filename()) , "w")
|
||||||
self.doGrab(fileObj, dest, totalsize)
|
self.doGrab(fileObj, dest, totalsize)
|
||||||
|
|
||||||
|
def setAuthInfo(self, username='', passwd=''):
|
||||||
|
if self.url.isLocalFile():
|
||||||
|
self.err('No auth info needed for local files')
|
||||||
|
self.username = username
|
||||||
|
self.passwd = passwd
|
||||||
|
|
||||||
|
def formatRequest(self, request):
|
||||||
|
if self.username:
|
||||||
|
request.add_header('Authorization', 'Basic %s' %
|
||||||
|
(encodestring('%s:%s' %
|
||||||
|
(self.username, self.passwd))))
|
||||||
|
|
||||||
|
return request
|
||||||
|
|
||||||
def err (self, error):
|
def err (self, error):
|
||||||
raise FetchError(error)
|
raise FetchError(error)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user