__all__ = ['robot_base', 'get_error']
-import sys
-import time, urllib
from base64 import b64encode
+import sys
+import socket
+import time
+import urllib
from urlparse import urljoin
-from m_lib.net.www.util import parse_time
from m_lib.md5wrapper import md5wrapper
+from m_lib.net.www.util import parse_time
from bkmk_objects import Robot
from parse_html import parse_html
}
-def get_error(msg):
- if isinstance(msg, str):
- return msg
+def get_error(e):
+ if isinstance(e, str):
+ return e
else:
s = []
- for i in msg:
+ for i in e:
s.append("'%s'" % str(i).replace('\n', "\\n"))
return "(%s)" % ' '.join(s)
# or None if there is no icon.
class robot_base(Robot):
+ timeout = 60
+
+ def __init__(self, *args, **kw):
+ Robot.__init__(self, *args, **kw)
+ socket.setdefaulttimeout(int(self.timeout))
+
def check_url(self, bookmark):
try:
self.start = int(time.time())
self.log("Keyboard interrupt (^C)")
return 0
+ except socket.error, e:
+ bookmark.error = get_error(e)
+ self.log(bookmark.error)
+
except:
import traceback
traceback.print_exc()