[問題] gmail api夾帶檔案pdf空白或毀損

看板Python作者 (宅男8029)時間9年前 (2016/11/14 15:01), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/2 (看更多)
各位大神好, 小弟剛學python一個月,很多概念都不是很懂。 來這裡向大家請教,希望會的人可以幫幫忙 以下python 3.5 code是抓gmail api網站上修改的 (網站https://developers.google.com/gmail/api/guides/sending) def create_message_with_attachment(bcc, subject, message_text, file,sender=sender ): message = MIMEMultipart() message['bcc'] = bcc message['from'] = sender message['subject'] = subject msg = MIMEText(message_text) message.attach(msg) content_type, encoding = mimetypes.guess_type(file) main_type, sub_type = content_type.split('/', 1) fp = open(file, 'rb') msg = MIMEBase(main_type, sub_type) msg.set_payload(fp.read()) fp.close() filename = os.path.basename(file) msg.add_header('Content-Disposition', 'attachment', filename=filename) message.attach(msg) raw = base64.urlsafe_b64encode(message.as_bytes()) raw = raw.decode() return {'raw':raw} 當我file給他一個doc文件或是pdf文件的路徑時 最後都可以成功記出夾帶檔案的email 但是夾帶的檔案都是空白或毀損 請問上面生成message的程式碼有哪裡有問題嗎? 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.45.124 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1479106916.A.9FC.html

11/14 16:41, , 1F
猜測應該是filename沒有夾到附檔名
11/14 16:41, 1F

11/14 17:03, , 2F
找了一下 看起來也不是
11/14 17:03, 2F

11/14 17:36, , 3F
謝謝...不好意思我估狗到答案了 是encoding問題 已解決
11/14 17:36, 3F
文章代碼(AID): #1OAM5ady (Python)
文章代碼(AID): #1OAM5ady (Python)