【问题标题】:How to install python database library to work with robotframework - API issue如何安装 python 数据库库以使用robotframework - API 问题
【发布时间】:2012-02-08 02:29:45
【问题描述】:

我在 Windows 7 64 位机器上,使用 Python 2.7,我正在尝试在机器人框架中使用 python 数据库库。之前用过java库文件,现在想用python库。

我已经去了githubdownloaded version 0.6

我还从here 安装了一个安装文件和 MySQL-python

但是,当我尝试安装数据库库(使用 python setup.py build)时,出现以下错误:

Traceback (most recent call last):
  File "setup.py", line 25, in <module>
    from DatabaseLibrary import __version__
  File "src\DatabaseLibrary\__init__.py", line 15, in <module>
    from connection_manager import ConnectionManager
  File "src\DatabaseLibrary\connection_manager.py", line 16, in <module>
    from robot.api import logger
ImportError: No module named api

为什么我没有robot.api 以及如何获取和安装它?或者有没有更简单的安装python数据库的方法?

【问题讨论】:

    标签: python database api robotframework


    【解决方案1】:

    似乎数据库库使用机器人框架内部,但没有列出机器人框架作为它的依赖项。 robot.api 包是在 RF 2.6 中引入的,因此升级/安装最新的 Robot Framework(来自project pages)应该可以解决您的问题

    【讨论】:

    • 谢谢 Janne,我采用了另一种方法,但您的回答是最好的方法。 (很遗憾,我需要 15 分才能给你一票)
    【解决方案2】:

    在尝试安装之前,首先确保您的模块的完整性。要使用 distutils (setup.py) 安装模块,您需要以管理员身份运行此命令:

    python setup.py install
    

    这应该会运行设置并向您报告任何缺少的依赖项。

    或者,您可以从以下位置安装 PIP:PIP Project home page。他们的页面提供了如何安装 PIP 的说明,它是 Python 的包管理器,类似于 PHP 的 PEAR、Perl 的 CPAN 或 ruby​​ 的 gem。安装后,您可以使用以下命令安装软件包:

    pip install <module>
    

    【讨论】:

      【解决方案3】:

      问题是我在“Python27\Lib\site-packages”的“Robot”文件夹中没有“API”文件夹,因为我没有最新版本的 RF。 logger 是自 2011 年 10 月以来适用于 Robot Framework 2.6 的新日志 API。(正如 janne 指出的那样)

      这个问题的两个修复似乎是:

      1. 经过测试和工作但不推荐,除非您不想更新 RF:编辑“robotframework-databaselibrary-0.6”中的 2 个文件“connection_manager.py”和“query.py”,以便不依赖于Robotframework 记录器。这是一个简单快捷的编辑,您将“from robot.api import logger”替换为“import logging”,将“logger”替换为“logging” 有关详细信息,请参阅“http://robotframework.googlecode.com/hg/doc/userguide/RobotFrameworkUserGuide.html#programmatic-logging-apis”。

      2. 重新安装 Robotframework 并确保已创建“API”文件夹。建议这样做,因为它是最好的方法。

      (由于评论太长而添加为答案)

      【讨论】:

        猜你喜欢
        • 2018-03-09
        • 2020-09-09
        • 2017-07-01
        • 1970-01-01
        • 2015-11-25
        • 2021-04-17
        • 1970-01-01
        • 1970-01-01
        • 2011-12-02
        相关资源
        最近更新 更多