Записать данные Twitter в корзину S3 - PullRequest
0 голосов
/ 16 декабря 2018

Я пытаюсь записать свои потоковые данные (в формате json) в корзину s3.Я использую код ниже, но не могу писать.Нет ошибок при выполнении кода ниже.но нет файлов JSON в S3

class TweetsListener( StreamListener):

    def __init__(self,path):
        self.path = path

    def on_data(self, data):
        try:
            s3 = boto3.resource('s3')
            s3.put_object(Bucket='bucket',Body=data.encode('UTF-8'),Key='/A/'+self.path+'/test.json')
            return True
        except BaseException as e:
            print("Error on_data: %s" % str(e))
        return True

    def on_error(self, status):
        print(status)
        return True

1 Ответ

0 голосов
/ 16 декабря 2018

Из того, что я могу сказать, вы пытаетесь использовать put_object действие на S3 Service Resource boto3 вместо S3 Client .
Resource Service неесть метод put_object.

Кроме того, вы должны удалить начальный / в ключе и убедиться, что ваше ведро уже создано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...