X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=check_title.py;h=5c0ed3f0ed4b7f9ae3982145803e284614871c9c;hb=e2c7ec4349db18acd4c8d0902b0a5ab2cffd5be7;hp=02c8e9ced9feee35c7062f4a38c96b051856bf52;hpb=71712390f4edb041609ff7bc9272d12a5c1a9b1d;p=bookmarks_db.git diff --git a/check_title.py b/check_title.py index 02c8e9c..5c0ed3f 100755 --- a/check_title.py +++ b/check_title.py @@ -1,80 +1,81 @@ -#! /usr/bin/env python +#! /usr/bin/env python3 """Check and show URLs in the bookmarks database where name != real title This file is a part of Bookmarks database and Internet robot. """ -__author__ = "Oleg Broytman " -__copyright__ = "Copyright (C) 2002-2012 PhiloSoft Design" -__license__ = "GNU GPL" - +from __future__ import print_function import sys from bkmk_objects import make_linear, quote_title, unquote_title -def run(): - from getopt import getopt - optlist, args = getopt(sys.argv[1:], "s") - - report_stats = 1 - - for _opt, _arg in optlist: - if _opt == '-s': - report_stats = 0 - try: - del _opt, _arg - except NameError: - pass - - if report_stats: - print "Broytman check_title, Copyright (C) 2002-2010 PhiloSoft Design" - - if args: - sys.stderr.write("check_title: too many arguments\n") - sys.stderr.write("Usage: check_title [-s]\n") - sys.exit(1) - - from storage import storage - storage = storage() - - if report_stats: - sys.stdout.write("Loading %s: " % storage.filename) - sys.stdout.flush() - - root_folder = storage.load() - make_linear(root_folder) - objects = len(root_folder.linear) - - if report_stats: - print "Ok" - - - for object_no in range(objects): - object = root_folder.linear[object_no] - - if object.isBookmark: - if hasattr(object, "moved") or hasattr(object, "error") \ - or object.href.startswith('place:'): # Firefox SmartBookmarks - continue - - if hasattr(object, "real_title") and (object.real_title is not None): - unquoted_title = unquote_title(quote_title(object.real_title)) - unquoted_name = unquote_title(object.name) - if unquoted_name <> unquoted_title: - print object.href - print unquoted_name - print unquoted_title - print - else: - print object.href - print object.name - print "NO REAL TITLE!!!" - print +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2002-2023 PhiloSoft Design" +__license__ = "GNU GPL" - if report_stats: - print objects, "objects passed" +def run(): + from getopt import getopt + optlist, args = getopt(sys.argv[1:], "s") + + report_stats = 1 + + for _opt, _arg in optlist: + if _opt == '-s': + report_stats = 0 + try: + del _opt, _arg + except NameError: + pass + + if report_stats: + print("Broytman check_title, Copyright (C) 2002-2023 PhiloSoft Design") + + if args: + sys.stderr.write("check_title: too many arguments\n") + sys.stderr.write("Usage: check_title [-s]\n") + sys.exit(1) + + from storage import storage + storage = storage() + + if report_stats: + sys.stdout.write("Loading %s: " % storage.filename) + sys.stdout.flush() + + root_folder = storage.load() + make_linear(root_folder) + objects = len(root_folder.linear) + + if report_stats: + print("Ok") + + for object_no in range(objects): + object = root_folder.linear[object_no] + + if object.isBookmark: + if hasattr(object, "moved") or hasattr(object, "error") or \ + object.href.startswith('place:'): # Firefox SmartBookmarks + continue + + if hasattr(object, "real_title") \ + and (object.real_title is not None): + unquoted_title = unquote_title(quote_title(object.real_title)) + unquoted_name = unquote_title(object.name) + if unquoted_name != unquoted_title: + print(object.href) + print(unquoted_name) + print(unquoted_title) + print() + else: + print(object.href) + print(object.name) + print("NO REAL TITLE!!!") + print() + + if report_stats: + print(objects, "objects passed") if __name__ == '__main__': - run() + run()