]> git.phdru.name Git - bookmarks_db.git/blob - Robots/bkmk_rforking_sub.py
7a74ffcf37b280e337263f79eec8a035718212d9
[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 __all__ = []
15
16
17 import sys, os
18
19 lib_dir = os.path.normpath(os.path.dirname(sys.argv[0]) + os.sep + os.pardir)
20 sys.path.append(lib_dir) # for bkmk_objects.py
21
22 try:
23    import cPickle
24    pickle = cPickle
25 except ImportError:
26    import pickle
27
28 from subproc import RecordFile
29
30
31 def run():
32    bkmk_in = RecordFile(sys.stdin)
33    bkmk_out = RecordFile(sys.stdout)
34
35    from m_lib.flog import openlog
36    log = openlog("check2.log")
37    from bkmk_rsimple import robot_simple
38    robot = robot_simple(log)
39
40    while 1:
41       bookmark = pickle.loads(bkmk_in.read_record())
42       log(bookmark.href)
43       robot.check_url(bookmark)
44       bkmk_out.write_record(pickle.dumps(bookmark))
45       log.outfile.flush()
46
47    log.close()
48
49
50 if __name__ == '__main__':
51    run()