【问题标题】:Merge multiple PDfs using pypdf2 and Email使用 pypdf2 和电子邮件合并多个 PDf
【发布时间】:2020-12-29 11:05:37
【问题描述】:

我正在使用 PyPDF2 合并多个 pdf 文件,然后使用 python shutil 方法将输出复制到最终目的地,并使用 smtplib 将副本(作为附件)通过电子邮件发送给用户。

最终目的地中的合并文件显示正确,但通过电子邮件发送的副本(附件)不正确。只有数组中的第一项出现,但其余页面为空白,总页数正确。

这是我的工作流程

  • 合并文件并保存合并到本地文件夹 --- 按预期工作
  • 将合并的文件复制到最终目的地 --- 按预期工作 -
  • 将合并文件的副本通过电子邮件发送到用户电子邮件地址 -- 数组中的第一个文件,之后为空页。总页数与总页数相匹配。

我正在使用以下代码来合并文件

pdf_list=['pdf_source.pdf','second_file.pdf','third_file.pdf']
for pdf in pdf_list:            
            merger.append(PdfFileReader(pdf),'rb')  
with open(merge_file_name, 'wb') as new_file:
            merger.write(new_file)

请推荐

【问题讨论】:

  • 所以当文件保存在您的系统上时,所有页面数据都在那里,但是如果您以编程方式通过电子邮件发送文件,内容是否会被截断?如果您手动通过电子邮件发送文件,会发生什么情况?附件是否太大而被切断?
  • 合并后的文件大小不是很大。所以,我可以手动发送电子邮件

标签: python pypdf2


【解决方案1】:

经过研究,我发现问题不是 pypdf2,而是文件附加到电子邮件的方式。

以下 stackoverflow 解决方案修复了该问题。

How to attach a pdf file to a MIME email in Python?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-23
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    相关资源
    最近更新 更多