将 Snowflake-connector-python 与 Python 3.x 结合使用时出现问题

joh*_*ome 13 python attributeerror snowflake-cloud-data-platform

我花了半天时间试图自己解决这个问题,但现在我已经没有想法和谷歌搜索请求了。所以基本上我想要的是使用 package.json 连接到我们的 Snowflake 数据库snowflake-connector-python。我能够很好地安装该软件包(以及自动安装的所有相关软件包),我当前的pip3 list结果是:

Package                    Version
-------------------------- ---------
asn1crypto                 1.3.0
azure-common               1.1.25
azure-core                 1.6.0
azure-storage-blob         12.3.2
boto3                      1.13.26
botocore                   1.16.26
certifi                    2020.6.20
cffi                       1.14.0
chardet                    3.0.4
cryptography               2.9.2
docutils                   0.15.2
gitdb                      4.0.5
GitPython                  3.1.3
idna                       2.9
isodate                    0.6.0
jmespath                   0.10.0
msrest                     0.6.17
oauthlib                   3.1.0
oscrypto                   1.2.0
pip                        20.1.1
pyasn1                     0.2.3
pyasn1-modules             0.0.9
pycparser                  2.20
pycryptodomex              3.9.8
PyJWT                      1.7.1
pyOpenSSL                  19.1.0
python-dateutil            2.8.1
pytz                       2020.1
requests                   2.23.0
requests-oauthlib          1.3.0
s3transfer                 0.3.3
setuptools                 47.3.1
six                        1.15.0
smmap                      3.0.4
snowflake-connector-python 2.2.8
urllib3                    1.25.9
wheel                      0.34.2
Run Code Online (Sandbox Code Playgroud)

需要明确的是,它是一个干净的 python-venv,尽管我也在主版本上尝试过它。

在VScode中运行以下代码时:

#!/usr/bin/env python
import snowflake.connector

# Gets the version
ctx = snowflake.connector.connect(
    user='user',
    password='pass',
    account='acc')
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

AttributeError: module 'snowflake' has no attribute 'connector'
Run Code Online (Sandbox Code Playgroud)

有谁知道这里可能有什么问题吗?

小智 16

AttributeError: module 'snowflake' has no attribute 'connector'

您的测试代码可能位于名为 的文件中snowflake.py,该文件导致导入冲突(它最终会导入自身)。将文件重命名为其他名称,它应该允许您导入正确的模块并运行连接器功能。


mma*_*ion 8

当我遇到这个问题时,我在我的环境中安装了snowflakesnowflake-connector-python模块,因此对于使用哪一个感到困惑。如果您尝试使用连接器,只需pip uninstall snowflake


Gar*_*oap 5

尝试显式导入“连接器”。我有同样的错误。

import pandas as pd
import snowflake as sf
from snowflake import connector
Run Code Online (Sandbox Code Playgroud)