You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用dask读取S3上的CSV文件并传入access key、secret解决报错

问题原因与修复方案

核心错误原因

你遇到的报错本质是dask读取S3文件时拿到的路径不是预期的字符串格式,而是元组类型,90%以上的情况是路径格式化错误导致的:

  • 你写的s3://{bucket}/{file_key.csv}是普通字符串,没有加f前缀,不会自动替换bucket、file_key的变量值
  • .csv后缀错误写在了file_key的变量占位符内部,就算开启插值也会找不到匹配的变量名

修复步骤

第一步:修正路径写法

把路径改为f-string格式,调整.csv的位置:

aws_access_key_id = 'xxxx'
aws_secret_access_key = 'xxxx'
# 替换为你自己的bucket、file_key变量名,注意加f前缀
df = dd.read_csv(
    f's3://{bucket}/{file_key}.csv', 
    storage_options = {'key': aws_access_key_id, 'secret': aws_secret_access_key}
)

修改前先确认bucket和file_key两个变量本身是字符串类型,不是元组/列表。

第二步:解决版本兼容问题

如果修改路径后仍报错,是dask和S3依赖包的版本不匹配,升级对应依赖即可:

pip install --upgrade dask s3fs fsspec

第三步:可选配置补充

如果你用的是非AWS默认的S3服务(比如自建MinIO、AWS非标准区域),需要在storage_options里补充端点配置:

storage_options = {
    'key': aws_access_key_id, 
    'secret': aws_secret_access_key,
    'client_kwargs': {'endpoint_url': '替换为你的S3服务端点'}
}

内容的提问来源于stack exchange,提问作者Jithendra Yenugula

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 16:15:04