+"""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 <phd@phdru.name>"
+__copyright__ = "Copyright (C) 1997-2024 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", "requests"))
+
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)