【发布时间】:2019-12-19 22:26:19
【问题描述】:
我有一个格式为 csv 的文件
IDATE_TIMESTAMP,OPEN,HIGH,LOW,CLOSE,VOLUME
1535535060,94.36,94.36,94.36,94.36,1
1535535120,94.36,94.36,93.8,93.8,1
1535535180,93.8,93.8,93.8,93.8,0
1535535240,93.8,93.8,93.74,93.74,1
1535535300,93.74,93.74,93.74,93.74,0
1535535360,93.74,93.74,93.74,93.74,0
1535535420,93.74,93.74,93.74,93.74,0
1535535480,93.74,93.74,93.74,93.74,0
1535535540,93.74,93.74,93.74,93.74,0
.
.
.
.
我必须往返时间戳,这将过滤掉文件中的数据并返回输出。我正在使用 python + boto3 进行 s3 选择。
fromTs = "1535535480"
toTs = "1535535480"
query = """SELECT * FROM s3object s WHERE s."IDATE_TIMESTAMP" >= "%s" AND s."IDATE_TIMESTAMP" <= "%s" """%(fromTs, toTs)
request = client.select_object_content(
Bucket=bucket,
Key=filename,
ExpressionType="SQL",
Expression=query,
InputSerialization={"CSV":{"FileHeaderInfo":"Use", "FieldDelimiter":",", "RecordDelimiter":"\n"}},
OutputSerialization={"CSV":{}},
)
botocore.exceptions.ClientError:调用 SelectObjectContent 操作时发生错误 (MissingHeaders):文件中缺少查询中的某些标头。请检查文件并重试。
这是我遇到的错误
【问题讨论】:
标签: python-2.7 amazon-s3 boto3