1

私はPython2.7を使用しているWindows764ビットマシンを使用しており、robotframeworkでpythonデータベースライブラリを使用しようとしています。以前はJavaライブラリファイルを使用していましたが、今はPythonライブラリを使用したいと思います。

githubにアクセスして、バージョン0.6をダウンロードしました。

ここからセットアップファイルとMySQL-pythonもインストールしました

ただし、(Pythonビルドを使用して)データベースライブラリをインストールしようとするとsetup.py、次のエラーが発生します。

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データベースライブラリをインストールする簡単な方法はありますか?

4

3 に答える 3

1

データベースライブラリはRobotFrameworkの内部を使用しているようですが、依存関係としてRobotFrameworkをリストしていません。robot.apiパッケージはRF2.6で導入されたため、(プロジェクトページから)最新のRobot Frameworkをアップグレード/インストールすると、問題が解決するはずです。

于 2012-01-12T05:44:28.630 に答える
0

インストールする前に、まずモジュールの整合性を確認してください。distutils(setup.py)を使用してモジュールをインストールするには、管理者として次のコマンドを実行する必要があります。

python setup.py install

これでセットアップが実行され、不足している依存関係があれば報告されます。

または、次の場所からPIPをインストールすることもできます:PIPプロジェクトのホームページ。彼らのページには、PIPのインストール方法が記載されています。これはPythonのパッケージマネージャーであり、PHPの場合はPEAR、Perlの場合はCPAN、rubyの場合はgemに似ています。インストールしたら、次のコマンドでパッケージをインストールできます。

pip install <module>
于 2012-01-12T02:48:43.733 に答える
0

問題は、最新バージョンのRFがなかったため、「Python27 \ Lib\site-packages」の「Robot」フォルダーに「API」フォルダーがなかったことです。また、ロガーは2011年10月以降のRobot Framework 2.6の新しいロギングAPIです。(指摘されているように、janne)

この問題の2つの修正は次のようです。

  1. テストされ、動作しましたが、RFを更新したくない場合を除いて推奨されません。Robotframeworkロガーに依存しないように、「robotframework-databaselibrary-0.6」の2つのファイル「connection_manager.py」と「query.py」を編集します。これは簡単で迅速な編集で、「from robot.api importlogger」を「importlogging」に、「logger」を「logging」に置き換えます。「http://robotframework.googlecode.com/hg/doc/userguide」を参照してください。詳細については、/ RobotFrameworkUserGuide.html#programmatic-logging-apis」を参照してください。

  2. Robotframeworkを再インストールし、「API」フォルダーが作成されていることを確認します。これが最善のアプローチであるため、これをお勧めします。

(コメントするには長すぎる回答として追加されました)

于 2012-01-12T10:33:24.300 に答える