Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services Boto3 s3 put操作获取;HTTPClientError“;_Amazon Web Services_Amazon S3_Boto3_Stringio - Fatal编程技术网

Amazon web services Boto3 s3 put操作获取;HTTPClientError“;

Amazon web services Boto3 s3 put操作获取;HTTPClientError“;,amazon-web-services,amazon-s3,boto3,stringio,Amazon Web Services,Amazon S3,Boto3,Stringio,我在尝试将测试csv放入s3时开始出现此错误: HTTPClientError:HTTP客户端引发了未经处理的异常: 超时值connect为超时(connect=60,read=60,total=None), 但它必须是int、float或None 起初它工作得很好,然后才开始给这个似乎不知从何而来。我在EC2服务器上有相同的脚本,它在那里可以正常工作,但在本地无法工作 import boto3 import pandas as pd from datetime import datetime,

我在尝试将测试csv放入s3时开始出现此错误:

HTTPClientError:HTTP客户端引发了未经处理的异常: 超时值connect为超时(connect=60,read=60,total=None), 但它必须是int、float或None

起初它工作得很好,然后才开始给这个似乎不知从何而来。我在EC2服务器上有相同的脚本,它在那里可以正常工作,但在本地无法工作

import boto3
import pandas as pd
from datetime import datetime, timedelta
from io import StringIO

ACCESS_KEY_ID = 'removed'
ACCESS_SECRET_KEY = 'removed'
region_name = 'us-west-2'

client = boto3.client( service_name = "s3", region_name =region_name ,
                                                aws_access_key_id=ACCESS_KEY_ID, aws_secret_access_key=ACCESS_SECRET_KEY
                                              ) 
s3_resource = boto3.resource('s3', aws_access_key_id=ACCESS_KEY_ID,
                               aws_secret_access_key=ACCESS_SECRET_KEY)

dest_bucket = 'mybucket'

df = pd.DataFrame({'Animal': ['Falcon', 'Falcon',
                             'Parrot', 'Parrot'],
                    'Max Speed': [380., 370., 24., 26.]})

csv_buffer = StringIO()
df.to_csv(csv_buffer, index = False)

s3_resource.Object(dest_bucket, 'test.csv').put(Body=csv_buffer.getvalue())
有人知道这是什么原因吗?完全回溯

    Traceback (most recent call last):

  File "<ipython-input-23-6e25ea0d6e73>", line 30, in <module>
    s3_resource.Object(dest_bucket, 'ec2-test/' + 'ec2_testLIVe.csv').put(Body=csv_buffer.getvalue())

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\boto3\resources\factory.py", line 520, in do_action
    response = action(self, *args, **kwargs)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\boto3\resources\action.py", line 83, in __call__
    response = getattr(parent.meta.client, operation_name)(**params)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\client.py", line 357, in _api_call
    return self._make_api_call(operation_name, kwargs)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\client.py", line 648, in _make_api_call
    operation_model, request_dict, request_context)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\client.py", line 667, in _make_request
    return self._endpoint.make_request(operation_model, request_dict)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\endpoint.py", line 102, in make_request
    return self._send_request(request_dict, operation_model)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\endpoint.py", line 137, in _send_request
    success_response, exception):

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\endpoint.py", line 231, in _needs_retry
    caught_exception=caught_exception, request_dict=request_dict)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\hooks.py", line 356, in emit
    return self._emitter.emit(aliased_event_name, **kwargs)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\hooks.py", line 228, in emit
    return self._emit(event_name, kwargs)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\hooks.py", line 211, in _emit
    response = handler(**kwargs)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 183, in __call__
    if self._checker(attempts, response, caught_exception):

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 251, in __call__
    caught_exception)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 269, in _should_retry
    return self._checker(attempt_number, response, caught_exception)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 317, in __call__
    caught_exception)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 223, in __call__
    attempt_number, caught_exception)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\retryhandler.py", line 359, in _check_caught_exception
    raise caught_exception

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\endpoint.py", line 200, in _do_get_response
    http_response = self._send(request)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\endpoint.py", line 244, in _send
    return self.http_session.send(request)

  File "C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site-packages\botocore\httpsession.py", line 298, in send
    raise HTTPClientError(error=e)
回溯(最近一次呼叫最后一次):
文件“”,第30行,在
s3_resource.Object(dest_bucket,'ec2 test/'+'ec2_testLIVe.csv').put(Body=csv_buffer.getvalue())
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\boto3\resources\factory.py”,第520行,在do\u action中
响应=动作(自身、*args、**kwargs)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\boto3\resources\action.py”,第83行,在调用中__
response=getattr(parent.meta.client,operation_name)(**参数)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\client.py”,第357行,在api调用中
返回self.\u make\u api\u调用(操作名称,kwargs)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\client.py”,第648行,在\u make\u api\u调用中
操作(模型、请求、请求上下文)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\client.py”,第667行,在请求中
返回self.\u endpoint.make\u请求(操作\u模型,请求\u dict)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\endpoint.py”,第102行,在make\u请求中
返回自我。发送请求(请求指令、操作模式)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\endpoint.py”,第137行,在发送请求中
成功(响应,异常):
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\endpoint.py”,第231行,在需要重试时
捕获的异常=捕获的异常,请求记录=请求记录)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\hooks.py”,第356行,在emit中
返回self.\u emitter.emit(别名为\u事件\u名称,**kwargs)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\hooks.py”,第228行,在emit中
返回自发出(事件名称,kwargs)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\hooks.py”,第211行,在
响应=处理程序(**kwargs)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第183行,在调用中__
如果自我检查(尝试、响应、捕获异常):
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第251行,在调用中__
捕获(U异常)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第269行,在“应该重试”中
返回自我检查(尝试编号、响应、捕获异常)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第317行,在调用中__
捕获(U异常)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第223行,在调用中__
尝试次数,捕获次数(异常)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\retryhandler.py”,第359行,在检查异常中
引发被捕获的异常
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\endpoint.py”,第200行,在\u do\u get\u响应中
http\u response=self.\u发送(请求)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\endpoint.py”,第244行,在\u send中
返回self.http_session.send(请求)
文件“C:\Users\mkjacks5\AppData\Local\Continuum\anaconda3\lib\site packages\botocore\httpsession.py”,第298行,在send中
引发HTTPClientError(错误=e)
Windows机器,python3。看起来它在抱怨connect参数值不是一个数字,但它说的是60?谷歌搜索时找不到关于此的任何信息,感谢您的帮助