]> git.phdru.name Git - bookmarks_db.git/blob - Robots/bkmk_rforking_sub.py
36338f42d6d52d4e80570cca0507eba83511c551
[bookmarks_db.git] / Robots / bkmk_rforking_sub.py
1 #! /usr/bin/env python
2 """Check URL - subprocess for the forking robot
3
4 This file is a part of Bookmarks database and Internet robot.
5 """
6
7 __version__ = "$Revision$"[11:-2]
8 __revision__ = "$Id$"[5:-2]
9 __date__ = "$Date$"[7:-2]
10 __author__ = "Oleg Broytman <phd@phdru.name>"
11 __copyright__ = "Copyright (C) 1999-2011 PhiloSoft Design"
12 __license__ = "GNU GPL"
13
14 import sys, os
15
16 lib_dir = os.path.normpath(os.path.dirname(sys.argv[0]) + os.sep + os.pardir)
17 sys.path.append(lib_dir) # for bkmk_objects.py
18
19 try:
20    import cPickle
21    pickle = cPickle
22 except ImportError:
23    import pickle
24
25 from subproc import RecordFile
26 import bkmk_rsimple
27
28
29 def run():
30    bkmk_in = RecordFile(sys.stdin)
31    bkmk_out = RecordFile(sys.stdout)
32
33    from m_lib.flog import openlog
34    log = openlog("check2.log")
35    from bkmk_rsimple import robot_simple
36    robot = robot_simple(log)
37
38    while 1:
39       bookmark = pickle.loads(bkmk_in.read_record())
40       log(bookmark.href)
41       robot.check_url(bookmark)
42       bkmk_out.write_record(pickle.dumps(bookmark))
43       log.outfile.flush()
44
45    log.close()
46
47
48 if __name__ == '__main__':
49    run()