X-Git-Url: https://git.phdru.name/?p=bookmarks_db.git;a=blobdiff_plain;f=bkmk-add.py;h=df12452433c27f4d9c5539cc28f7d5186aeb0541;hp=46efe3e870ec0c33a395a73067a69b96478c96ea;hb=HEAD;hpb=0e76f1851882b99da63a7c8a9e4cdf0c4a48657f diff --git a/bkmk-add.py b/bkmk-add.py index 46efe3e..f268277 100755 --- a/bkmk-add.py +++ b/bkmk-add.py @@ -1,84 +1,84 @@ -#! /usr/bin/env python -""" - Add a bookmark to the database. +#! /usr/bin/env python3 +"""Add a bookmark to the database + +This file is a part of Bookmarks database and Internet robot. - Written by Broytman. Copyright (C) 2002-2007 PhiloSoft Design. """ +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2002-2023 PhiloSoft Design" +__license__ = "GNU GPL" -import sys, os, time -from bkmk_objects import Bookmark -from Robots.bkmk_rsimple import robot_simple +import sys +import time -import tempfile -tempfname = "bkmk-add" + tempfile.gettempprefix() + "tmp" +from bkmk_objects import Bookmark +from robots import robot def run(): - from getopt import getopt - optlist, args = getopt(sys.argv[1:], "t:") - - report_stats = 1 - title = '' - - for _opt, _arg in optlist: - if _opt == '-s': - report_stats = 0 - elif _opt == '-t': - title = _arg - try: - del _opt, _arg - except NameError: - pass + from getopt import getopt + optlist, args = getopt(sys.argv[1:], "t:") - if len(args) <> 1: - sys.stderr.write("bkmk-add: too many or too few arguments\n") - sys.stderr.write("Usage: bkmk-add [-s] [-t title] url\n") - sys.exit(1) + report_stats = 1 + title = '' - from storage import storage, import_storage - storage = storage() + for _opt, _arg in optlist: + if _opt == '-s': + report_stats = 0 + elif _opt == '-t': + title = _arg + try: + del _opt, _arg + except NameError: + pass - if report_stats: - sys.stdout.write("Loading %s: " % storage.filename) - sys.stdout.flush() + if len(args) != 1: + sys.stderr.write("bkmk-add: too many or too few arguments\n") + sys.stderr.write("Usage: bkmk-add [-s] [-t title] url\n") + sys.exit(1) - root_folder = storage.load() + from storage import storage + storage = storage() - if report_stats: - print "Ok" + if report_stats: + sys.stdout.write("Loading %s: " % storage.filename) + sys.stdout.flush() - href = args[0] - now = int(time.time()) - bookmark = Bookmark(href, str(now), '0', '0') - bookmark.name = '' + root_folder = storage.load() - robot = robot_simple(tempfname, None) + if report_stats: + print("Ok") - if robot.check_url(bookmark): # get real title and last modified date - if title: # forced title - bookmark.name = title - elif hasattr(bookmark, "real_title"): - bookmark.name = bookmark.real_title - if report_stats: - sys.stdout.write("Adding %s with title '%s'\n" % (href, bookmark.name)) - root_folder.append(bookmark) + href = args[0] + now = int(time.time()) + bookmark = Bookmark(href, str(now), '0', '0') + bookmark.name = '' + bookmark.parent = None - if report_stats: - sys.stdout.write("Storing %s: " % storage.filename) - sys.stdout.flush() + global _robot + _robot = robot(None) - storage.store(root_folder) + if _robot.check_url(bookmark): # get real title and last modified date + if title: # forced title + bookmark.name = title + elif hasattr(bookmark, "real_title"): + bookmark.name = bookmark.real_title + if report_stats: + sys.stdout.write("Adding %s with title '%s'\n" + % (href, bookmark.name)) + del bookmark.parent + root_folder.append(bookmark) - if report_stats: - print "Ok" + if report_stats: + sys.stdout.write("Storing %s: " % storage.filename) + sys.stdout.flush() + storage.store(root_folder) - try: - os.unlink(tempfname) - except os.error: - pass + if report_stats: + print("Ok") if __name__ == '__main__': - run() + run()