2016-08-01 70 views
0

我试图从.msg文件附件转换图像并保存到PdF文件中。但是,当我试图读取转换为PdF文件的图像文件时,出现错误。这里是我的代码将附件中的图像文件转换为python中的PDF文件

if count_attachments > 0: 
    for item in range(count_attachments):   
     attached = msg.Attachments.Item(item + 1)    
     extension = attached.filename.split(".")[-1] 

     if extension == 'jpg' or extension == 'png': 
      pp = PdfPages(newname) 
      img_data = open(attached, 'rb').read()     
      pp.savefig(img_data)     
      pp.close() 

下面的部分,我从编译器得到了错误

Traceback (most recent call last): 
File "email-reader1.py", line 52, in <module> 
img_data = open(attached, 'rb').read() 
TypeError: Can't convert 'CDispatch' object to str implicitly 

回答

0

将行:
img_data = open(attached, 'rb').read()

有:
img_data = open(attached.filename, 'rb').read()

+0

谢谢寻求帮助。我改变了代码,但现在得到新的错误,说没有找到文件或目录。但是附件中存在该文件。这里是错误: – user2293224

+0

FileNotFoundError:[Errno 2]没有这样的文件或目录:'扫描2016-7-28 0009.jpg – user2293224

+0

我想先下载文件,然后下载?请任何人指导我 – user2293224