web-dev-qa-db-ja.com

ImportError:名前「PY2」をインポートできません

SQLalchemyを使用してスノーフレークに接続したい。スノーフレーク用のエンジンの作成中に次のエラーが発生しました:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\__init__.py", line 479, in create_engine
    return strategy.create(*args, **kwargs)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\strategies.py", line 61, in create
    entrypoint = u._get_entrypoint()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\url.py", line 172, in _get_entrypoint
    cls = registry.load(name)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\util\langhelpers.py", line 222, in load
    return self.impls[name]()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pkg_resources\__init__.py", line 2443, in load
    return self.resolve()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pkg_resources\__init__.py", line 2449, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\sqlalchemy\__init__.py", line 12, in <module>
    from .util import _url as URL
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\sqlalchemy\util.py", line 9, in <module>
    from snowflake.connector.compat import (PY2, IS_STR)
ImportError: cannot import name 'PY2' from 'snowflake.connector.compat' (C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\connector\compat.py)

エンジン作成コードはこれです:

from sqlalchemy import create_engine
from sqlalchemy.engine.url import URL
create_engine(URL("snowflake", username="***",password="***",Host="***"))
2
Mithil Bhoras

テスト済みの要件のページ ですべての依存関係を照合しました。 pip install --upgrade snowflake-sqlalchemyで問題が解決しました。バージョンPython 3.7.6/2.2.1snowflake-connector-pythonを実行しています

1

snowflake-connector-pythonバージョン2.2.0のリリースに関連しているようです。 <2.2.0に設定すると、修正されました。

1
sgieske