]> git.phdru.name Git - bookmarks_db.git/blobdiff - set-title-list.py
Fix(Robot): Stop splitting and un-splitting URLs
[bookmarks_db.git] / set-title-list.py
index 52c5ee8d6d0ad2fd751b700f3415721865a97425..d37398475ddae5de7d9b8006f4042ecfefe7c12d 100755 (executable)
@@ -1,5 +1,6 @@
-#! /usr/bin/env python
-"""Run through the bookmarks database and set names to titles from an external file
+#! /usr/bin/env python3
+"""Run through the bookmarks database and set names to titles
+from an external file
 
 This file is a part of Bookmarks database and Internet robot.
 """
@@ -28,7 +29,8 @@ def run():
         pass
 
     if report_stats:
-        print("Broytman set-title-list, Copyright (C) 2003-2023 PhiloSoft Design")
+        print("Broytman set-title-list, Copyright (C)"
+              " 2003-2023 PhiloSoft Design")
 
     if len(args) != 1:
         sys.stderr.write("Usage: set-title-list [-s] title_list_file\n")
@@ -40,7 +42,7 @@ def run():
     URL = None
     title = None
 
-    title_list_file = open(args[0], 'r')
+    title_list_file = open(args[0], 'rt', encoding='utf-8')
     for line in title_list_file:
         line = line[:-1]  # strip trailing newline
         if URL is None:
@@ -50,12 +52,18 @@ def run():
             title = line
 
         elif line:  # the third line in every 3 lines must be empty
-            raise ValueError("line is not empty for URL `%s', title `%s': line `%s'" % (URL, title, line))
+            raise ValueError(
+                "line is not empty for URL `%s', title `%s': line `%s'"
+                % (URL, title, line)
+            )
 
         else:  # We've got 3 lines - add new entry to the mapping
-            if titles_dict.has_key(URL):
+            if URL in titles_dict:
                 if title != titles_dict[URL]:
-                    raise ValueError("titles are not identical for URL `%s': `%s' != `%s'" % (URL, title, titles_dict[URL]))
+                    raise ValueError(
+                        "titles are not identical for URL `%s': `%s' != `%s'"
+                        % (URL, title, titles_dict[URL])
+                    )
 
             else:
                 titles_dict[URL] = title
@@ -88,7 +96,7 @@ def run():
 
         if object.isBookmark:
             URL = object.href
-            if titles_dict.has_key(URL):
+            if URL in titles_dict:
                 name = titles_dict[URL]
                 if object.name != name:
                     object.name = name