2017-06-14 6 views
0

私は最初にpandasデータフレームに保存したいと思う.csvファイルを持っています。表。(Python 3.6.1)Pandas dfからMySQLデータベースへのエラー 'ModuleNotFoundError:モジュール名が' MySQLdb '

私は、初期設定のため、この投稿に従っている次のようにpandas dataframe to mysql db error database flavor mysql is not supported

私の.pyコードは次のとおりです。

from sqlalchemy import create_engine 
import pandas 

engine = create_engine("mysql+mysqldb://root:[email protected]/new_schema") 

df = pandas.read_csv('items.csv') 
df.to_sql('items', con=engine, flavor='mysql', if_exists='append') 

私が取得エラーメッセージはこれです:持って何

/PyCharmProjects/venv2/bin/python /PyCharmProjects/venv2/tutorial/tutorial/other/csvToMySQL.py 
Traceback (most recent call last): 
    File "/PyCharmProjects/venv2/tutorial/tutorial/other/csvToMySQL.py", line 4, in <module> 
    engine = create_engine("mysql+mysqldb://root:[email protected]/new_schema") 
    File "/PyCharmProjects/venv2/lib/python3.6/site-packages/sqlalchemy/engine/__init__.py", line 387, in create_engine 
    return strategy.create(*args, **kwargs) 
    File "/PyCharmProjects/venv2/lib/python3.6/site-packages/sqlalchemy/engine/strategies.py", line 80, in create 
    dbapi = dialect_cls.dbapi(**dbapi_args) 
    File "/PyCharmProjects/venv2/lib/python3.6/site-packages/sqlalchemy/dialects/mysql/mysqldb.py", line 110, in dbapi 
    return __import__('MySQLdb') 
ModuleNotFoundError: No module named 'MySQLdb' 

私はエンジンのセットアップで間違っていましたか?

テックスペック:

  • マックOSX 10.11(エル・キャピタン)
  • のPython 3.6.1
  • PyCharm CE 2017年1月2日
  • 5.7.18 MySQL Community Serverが(GPL)

更新番号1

以下の推奨事項に基づいて、「pip-python install python」を試しました。私は以下の勧告に基づいて 'のMySQLdbをインストールPIP' しようとした2

Collecting MySQL-python 
    Using cached MySQL-python-1.2.5.zip 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 
     File "<string>", line 1, in <module> 
     File "/private/var/folders/5y/zqsn7cwx5dv_ntvdrwr08l100000gn/T/pip-build-umrr237y/MySQL-python/setup.py", line 13, in <module> 
     from setup_posix import get_config 
     File "/private/var/folders/5y/zqsn7cwx5dv_ntvdrwr08l100000gn/T/pip-build-umrr237y/MySQL-python/setup_posix.py", line 2, in <module> 
     from ConfigParser import SafeConfigParser 
    ModuleNotFoundError: No module named 'ConfigParser' 

    ---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/5y/zqsn7cwx5dv_ntvdrwr08l100000gn/T/pip-build-umrr237y/MySQL-python/ 

更新#:これは私が受信したエラーです。これは私が受信したエラーです:

Collecting MySQLdb 
    Could not find a version that satisfies the requirement MySQLdb (from versions:) 
No matching distribution found for MySQLdb 
+0

このモジュールをインストールしようとしましたか? – ForceBru

+0

@ForceBru - はい、私はpip(pip install mySQLdb)経由でそのモジュールをインストールしようとしました。上記の元の記事をUpdate#2で更新しました。何か案は? – slsu

+0

モジュールがインストールされていないというエラーメッセージが表示された場合は、おそらく 'pip'でインストールするべきです。 – ForceBru

答えて

1

をインストールし、私は最終的に物事は、Python 3.6.1で迅速に動作させるための方法を発見しました。明らかに、これを行う最速の方法は、Homebrewを使用してmySQLをインストールしてから、mysqlクライアントをインストールすることでした。私はもともと.dmg経由でMySQLをインストールしていましたが、さまざまなパッケージをインストールするときに多くのエラーが発生していました。ターミナルで

、タイプ:

from sqlalchemy import create_engine 
import pandas 

engine = create_engine("mysql+mysqldb://root:[email protected]/new_schema") 

df = pandas.read_csv('items.csv') 
df.to_sql('items', con=engine, if_exists='append') 

(ちなみに、:

  • $醸造は、MySQL
  • $はの.pyコードを実行できるようになりましたはmysqlclient
  • をインストールPIPインストール

    +0

    ありがとう!それは私のために働いた。 –

    +0

    @VictorOliveiraAntonino - うれしかった! – slsu

    0

    あなたのプロジェクトは、MySQLデータベースサーバに接続するためのインタフェースであるのMySQLdbを、見つけることができません。

    パッケージにアクセスするためにMySQLdbをインポートしていません。

    問題が解決しない場合は、パッケージを使用するプログラムの先頭にimport文を追加します。

    まだパッケージにアクセスできない場合は、MySQLdbパッケージがインストールされていない可能性があります。

    は、その場合には、まずあなたは、パッケージを検索し、それをインストールしようとする必要があります。

    あなたが任意のパッケージを検索し、インストールするピップを使用することができます。

    まず、あなたがそのパッケージを持っているかどうかを確認してください。

    このコマンドを実行します。あなたは(MySQLの-pythonの)パッケージがリストされているかいないか

    • ピップリスト(インストールされているすべてのパッケージをリスト)

    チェック。

    実行していない場合は、

    • ピップは、あなたのコードを実行しようとし、その後

    (パッケージをインストールするには)MySQLの-のpythonをインストールします。


    のMySQL、パイソンは、Pythonのバージョン2 *、 ​​と共に使用したのMySQL-PythonののPythonの3互換性のフォークです。このライブラリをインストールするには

    、 ピップは、複数の試行後はmysqlclient

    +0

    ヒントをありがとう。私は 'pip install MySQL-python'(Update#1を参照)に基づいて投稿を更新しました。まだ問題にぶつかっています。何か案は? – slsu

    +0

    @スルス私は自分の答えを更新しました。 – amighty

    関連する問題