X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=bkmk-add.py;h=df12452433c27f4d9c5539cc28f7d5186aeb0541;hb=11632b7623b2b2e01995f013bc6d8ba01c20cf74;hp=24952ce0d74423c93010d3a075d9d8f603c94053;hpb=9edef5a570ea28f7c06d8d92fdd70afe0ea86809;p=bookmarks_db.git diff --git a/bkmk-add.py b/bkmk-add.py index 24952ce..df12452 100755 --- a/bkmk-add.py +++ b/bkmk-add.py @@ -1,85 +1,81 @@ #! /usr/bin/env python -""" - Add a bookmark to the database. +"""Add a bookmark to the database + +This file is a part of Bookmarks database and Internet robot. - Written by BroytMann, Aug 2002. Copyright (C) 2002 PhiloSoft Design """ +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2002-2017 PhiloSoft Design" +__license__ = "GNU GPL" -import sys, os, time, urllib +import sys, os, time from bkmk_objects import Bookmark -from Robots.bkmk_rsimple import robot_simple - -import tempfile -tempfname = "bkmk-add" + tempfile.gettempprefix() + "tmp" +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) - url_type, url_rest = urllib.splittype(href) + if report_stats: + print("Ok") - if robot.check_url(bookmark, url_type, url_rest): # 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()