]> git.phdru.name Git - bookmarks_db.git/blobdiff - check_urls.py
No need to call .lower() two times.
[bookmarks_db.git] / check_urls.py
index 75f31559b89ab3b12216d0e93b7b3eadf8535e0f..c3e81b876cd7c811d7a807101fe3d51aa85d0f15 100755 (executable)
@@ -2,12 +2,12 @@
 """
    Robot interface - check URLs from bookmarks database
 
-   Written by BroytMann, Mar 2000 - Aug 2002. Copyright (C) 2000-2002 PhiloSoft Design
+   Written by Broytman. Copyright (C) 2000-2010 PhiloSoft Design.
 """
 
 
-import sys, os, urllib, tempfile
-tempfname = "check_urls" + tempfile.gettempprefix() + "tmp"
+import sys, os
+tempfname = "check_urls.tmp"
 
 
 def run():
@@ -31,7 +31,7 @@ def run():
       pass
 
    if report_stats:
-      print "BroytMann check_urls, Copyright (C) 1997-2002 PhiloSoft Design"
+      print "Broytman check_urls, Copyright (C) 1997-2010 PhiloSoft Design"
 
    if args:
       sys.stderr.write("check_urls: too many arguments\n")
@@ -70,7 +70,7 @@ def run():
       sys.stdout.flush()
 
    root_folder = storage.load()
-   from bkmk_objects import make_linear
+   from bkmk_objects import make_linear, break_tree
    make_linear(root_folder)
    objects = len(root_folder.linear)
 
@@ -103,6 +103,10 @@ def run():
       object_count = object_count + 1
 
       if object.isBookmark:
+         if object.href.startswith('place:'): # Firefox SmartBookmarks
+            log("Skipped %s" % object.href)
+            continue
+
          if only_errors:
             if hasattr(object, "error"):
                delattr(object, "error")
@@ -114,13 +118,12 @@ def run():
             old_object = root_folder.linear[checked[object.href]]
             for attr_name in ("last_visit", "last_modified",
                   "error", "no_error", "moved", "size", "md5", "real_title",
-                  "last_tested", "test_time"):
+                  "last_tested", "test_time", "icon", "charset"):
                if hasattr(old_object, attr_name):
                   setattr(object, attr_name, getattr(old_object, attr_name))
          else:
-            url_type, url_rest = urllib.splittype(object.href)
-            log("Checking %s:%s" % (url_type, url_rest))
-            rcode = robot.check_url(object, url_type, url_rest)
+            log("Checking %s" % object.href)
+            rcode = robot.check_url(object)
 
             if rcode:
                checked[object.href] = object_no
@@ -143,6 +146,7 @@ def run():
       print urls_no, "URLs checked"
       print size, "bytes eaten"
 
+   break_tree(root_folder.linear)
    storage.store(root_folder)
 
    if rcode: