X-Git-Url: https://git.phdru.name/?p=bookmarks_db.git;a=blobdiff_plain;f=Robots%2Fbkmk_rurllib.py;h=6c10148af5688b26fc4eba60c7f34247a8d581bc;hp=d9908b83292ab92fcfd107710446555cd3aab712;hb=c19fbf714f025012d089aa86e4fa8e3b46f3a01e;hpb=d2c2975d4cd9375460c7bbaaa3b6dbb855e84b86 diff --git a/Robots/bkmk_rurllib.py b/Robots/bkmk_rurllib.py index d9908b8..6c10148 100644 --- a/Robots/bkmk_rurllib.py +++ b/Robots/bkmk_rurllib.py @@ -13,9 +13,15 @@ __all__ = ['robot_urllib'] import sys, os import time, urllib -from Robots.bkmk_robot_base import robot_base, RedirectException, get_error +from Robots.bkmk_robot_base import robot_base, get_error +class RedirectException(Exception): + def __init__(self, errcode, newurl): + Exception.__init__(self) + self.errcode = errcode + self.newurl = newurl + class MyURLopener(urllib.URLopener): # Error 301 -- relocated (permanently) def http_error_301(self, url, fp, errcode, errmsg, headers, data=None): @@ -91,7 +97,10 @@ class robot_urllib(robot_base): content = infile.read() infile.close() - return None, headers, content + return None, None, None, headers, content + + except RedirectException, e: + return None, e.errcode, e.newurl, None, None except IOError, msg: if (msg[0] == "http error") and (msg[1] == -1): @@ -102,7 +111,7 @@ class robot_urllib(robot_base): error = get_error(msg) self.log(' Error: %s' % error) - return error, None, None + return error, None, None, None, None def get_ftp_welcome(self): global ftpcache_key