Eli*_*red 1 pip amazon-s3 python-3.x boto3 snowflake-cloud-data-platform
boto3我正在尝试使用snowflake-connector-python以下包连接到 Amazon S3 :
boto3==1.14.8
botocore==1.17.8
snowflake-connector-python==2.2.7
snowflake-sqlalchemy==1.2.3
Run Code Online (Sandbox Code Playgroud)
我通过以下方式创建 s3 连接:
import boto3
import pandas as pd
import io
def retrieveCSV():
session = boto3.Session(
aws_access_key_id = [ACCESSKEY],
aws_secret_access_key = [SECRETKEY],
)
s3 = session.resource('s3')
obj = s3.Object('mybucket','MyData.csv')
body = obj.get()['Body'].read()
dfCSV = pd.read_csv(io.BytesIO(body),header=2)
print(dfCSV)
return dfCSV
Run Code Online (Sandbox Code Playgroud)
我使用以下方式连接到 Snowflake:
from sqlalchemy import create_engine
def createEngine(schema):
strConn = 'snowflake://{user}:{password}@{account}/{database}/{schema}'.format(
user = [MYUSER],
password = [MYPASSWORD],
account = [MYSERVER],
database = [MYDATABASE],
schema = [MYSCHEMA]
)
print(strConn)
engine = create_engine(strConn)
return engine
Run Code Online (Sandbox Code Playgroud)
运行时会出现以下错误create_engine:
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (boto3 1.14.8(/home/ubuntu/.local/lib/python3.6/site-packages), Requirement.parse('boto3<1.14,>=1.4.4'), {'snowflake-connector-python'})
Run Code Online (Sandbox Code Playgroud)
我尝试通过以下方式升级:
pip3 install --upgrade snowflake-connector-python
Run Code Online (Sandbox Code Playgroud)
以SegFault:
Installing collected packages: urllib3, six, python-dateutil, docutils, jmespath, botocore, s3transfer, boto3, pycparser, cffi, cryptography, idna, certifi, chardet, requests, azure-core, oauthlib, requests-oauthlib, isodate, msrest, azure-storage-blob, pyjwt, asn1crypto, pytz, oscrypto, pycryptodomex, pyOpenSSL, azure-common, ijson, snowflake-connector-python
Segmentation fault (core dumped)
Run Code Online (Sandbox Code Playgroud)
解决这个冲突的方法是什么?
小智 5
解决这个冲突的方法是什么?
您可以尝试遵循使用最低的合适版本的路径。分解它:
snowflake-connector-python依赖关系似乎最多限制其对boto3库的使用。1.13.xboto3 1.14.x。boto3API 的使用(通过共享的代码片段)似乎不涉及任何 1.14.x 特定的更改或功能。boto3 1.13.x版本继续针对实时 AWS S3 服务运行。因此,请尝试使用可接受的boto3 / botocore版本来代替当前版本:
boto3==1.13
botocore==1.16
snowflake-connector-python==2.2.7
snowflake-sqlalchemy==1.2.3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2087 次 |
| 最近记录: |