X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=robots.py;h=1571d58e2af9b3b63c3e3ed1f0cd5bd7d1651e07;hb=29bdb96dda0b68ab2946ca4ba46e1887e414b06c;hp=c979f93ea9c7753b47598510549b1f4a4650bb63;hpb=fb5c3b2b91aeeb615d6d6d890491af3fdff69556;p=bookmarks_db.git diff --git a/robots.py b/robots.py index c979f93..1571d58 100644 --- a/robots.py +++ b/robots.py @@ -1,14 +1,31 @@ +"""Thin wrapper for module Robots. Provides "default" robot + +This file is a part of Bookmarks database and Internet robot. + """ - Thin wrapper for module Robots. Provides "default" robot -""" +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 1997-2023 PhiloSoft Design" +__license__ = "GNU GPL" + +__all__ = ['import_robot', 'robot'] + +import sys from os import environ -robot_name = environ.get("BKMK_ROBOT", "forking") +from bkmk_objects import parse_params, set_params + +robot_name, robot_params = parse_params(environ.get("BKMK_ROBOT", "forking")) + def import_robot(robot_name): - exec "from Robots import bkmk_r%s" % robot_name - exec "robot = bkmk_r%s.robot_%s" % (robot_name, robot_name) - return robot + if (robot_name == 'urllib') and (sys.version_info[0] >= 3): + robot_name = 'urllib_py3' + ns = locals() + exec("from Robots import bkmk_r%s" % robot_name, globals(), ns) + exec("robot = bkmk_r%s.robot_%s" % (robot_name, robot_name), globals(), ns) + return ns['robot'] + robot = import_robot(robot_name) +set_params(robot, robot_params)