Python 使用pypdf2和电子邮件合并多个PDF

Python 使用pypdf2和电子邮件合并多个PDF,python,pypdf2,Python,Pypdf2,我使用PyPDF2合并多个pdf文件,然后使用python shutil方法将输出复制到最终目的地,并使用smtplib通过电子邮件将副本(作为附件)发送给用户 最终目标中的合并文件显示正确,但电子邮件副本(附件)显示不正确。数组中只显示第一项,但剩余页面为空,总页数正确 这是我的工作流程 合并文件并将合并后的文件保存到本地文件夹--按预期工作 将合并文件复制到最终目标--按预期工作- 将合并文件的副本通过电子邮件发送到用户的电子邮件地址——数组中的第一个文件,之后是空白页面。总页数与总计数匹

我使用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)

请建议

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

下面的stackoverflow解决方案修复了该问题


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