]> git.phdru.name Git - bookmarks_db.git/blob - check_url.py
Robots no longer have one global temporary file - there are at least two
[bookmarks_db.git] / check_url.py
1 #! /usr/bin/env python
2 """
3    Robot interface - check one URL
4
5    Written by Broytman. Copyright (C) 2010 PhiloSoft Design.
6 """
7
8
9 import sys
10 import httplib
11
12 HTTP = httplib.HTTP
13
14 class MyHTTP(HTTP):
15     def _setup(self, conn):
16         HTTP._setup(self, conn)
17         self.set_debuglevel(1)
18
19 httplib.HTTP = MyHTTP
20
21 from bkmk_objects import Bookmark
22 from Writers.bkmk_wflad import strftime
23
24
25 def run():
26    print "Broytman check_url, Copyright (C) 2010 PhiloSoft Design"
27
28    if len(sys.argv) < 2:
29       sys.stderr.write("Usage: check_url.py url1 [url2...]\n")
30       sys.exit(1)
31
32    from m_lib.flog import makelog
33    log = makelog("check.log")
34
35    from robots import robot
36    robot = robot(log)
37
38    for url in sys.argv[1:]:
39        bookmark = Bookmark(href=url, add_date=None)
40        bookmark.parent = None
41
42        rcode = robot.check_url(bookmark)
43        print "check_url: %s" % rcode
44
45        if hasattr(bookmark, 'error'):
46           print bookmark.error
47
48        else:
49           print """\
50 URL: %s
51 Title: %s
52 LastModified: %s
53 IconURI: %s
54 Icon: %s
55 """ % (bookmark.href, getattr(bookmark, 'real_title', ''), strftime(bookmark.last_modified), bookmark.icon_href, bookmark.icon)
56
57    robot.stop()
58    log.close()
59
60
61 if __name__ == '__main__':
62    run()