bugfix> python > 投稿

私のプログラムの提案を探しています:

私のプログラムの一部は、クラウドにアップロードする必要がある.csvファイルを生成します。基本的に、プログラムは.csvファイルをクラウドにアップロードし、その場所のURL(csv_url)を返す必要があります

私のプログラムの別の部分は、このファイルをダウンロードするためにwgetでそのcsv_urlを使用する必要があります。

この問題にどのように取り組むことができますか?ファイルをS3バケットにアップロードするとうまくいきますか?その場合、統合されたURLを返す方法は? s3バケットとは別に、ファイルをアップロードしようとする他のメディアはありますか?どんな提案でも非常に役立ちます。

回答 2 件
  • boto3 を試す  Amazonのライブラリには、実行したいすべての機能があります

    S3, GET/POST/PUT/DELETE/LIST.

    PUTの例-

    # Upload a new file
     data = open('test.jpg', 'rb')
     s3.Bucket('my-bucket').put_object(Key='test.jpg', Body=data)
    
    

  • はい、AWS s3にファイルをアップロードすることは間違いなく機能します。他に何も必要ありません。Pythonでそれを行いたい場合は、非常に簡単です。

    import boto3
    s3 = boto3.client('s3')
    s3.upload_file('images/4.jpeg', 'mausamrest', 'test/jkl.jpeg',ExtraArgs={'ACL': 'public-read'})
    
    

    どこモーサムレスト バケットであり、test/jkl.jpeg はキーネーム またはあなたは言うことができますファイル名 s3で

    そして、これはあなたのURLを持つ方法です

    s3.amazonaws.com/bucketname/keynameこれは、オブジェクトのURLの形式です

    私の場合、画像がブラウザで開いているのは、そのようなことをしているので、あなたの場合、csvがダウンロードされます

あなたの答え