Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.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
如何在Python中将PDF(使用PdfPages)上载到AWS S3_Python_Amazon Web Services_Amazon S3_Pdfpages - Fatal编程技术网

如何在Python中将PDF(使用PdfPages)上载到AWS S3

如何在Python中将PDF(使用PdfPages)上载到AWS S3,python,amazon-web-services,amazon-s3,pdfpages,Python,Amazon Web Services,Amazon S3,Pdfpages,我的代码中有一些绘图,我希望它们以Pdf格式保存在AWS的S3存储中。您必须使用BytesIO转换所有内容。可以使用pp.savefig()或pp.savefig(图)在循环中添加任意数量的绘图。我假设您已经将凭据配置为在AWS中进行身份验证 import io import boto3 from datetime import datetime from matplotlib.backends.backend_pdf import PdfPages from matplotlib import

我的代码中有一些绘图,我希望它们以Pdf格式保存在AWS的S3存储中。

您必须使用BytesIO转换所有内容。可以使用pp.savefig()或pp.savefig(图)在循环中添加任意数量的绘图。我假设您已经将凭据配置为在AWS中进行身份验证

import io
import boto3
from datetime import datetime
from matplotlib.backends.backend_pdf import PdfPages
from matplotlib import pyplot as plt

with io.BytesIO() as output:
    with PdfPages(output) as pp:
        fig, ax = plt.subplots(figsize=(12, 6))
        plt.plot([1,2,3,4,5,6],[1,2,3,4,5,6])
        pp.savefig()
    data = output.getvalue()
    
my_bucket = 'my-buketname'
s3 = boto3.resource('s3')
dir = 'my-dir-name'
file = dir + 'test.pdf'
s3.Bucket(my_bucket).put_object(Key=file, Body=data)

感谢您尝试向SO提供内容,但即使是问题+自我回答也需要是正确的问题,您的答案不是。至少问题的
PdfPages
部分需要是问题的一部分,然后答案只是s3交互部分,其中已经有大量重复项。