Python встроенное изображение Thunderbird - PullRequest
4 голосов
/ 10 октября 2011

Я не могу заставить thunderbird показывать какие-либо встроенные изображения, которые я отправляю в письмах через python. На нем изображены небольшие пустые прямоугольники и изображение под телом (не типичное вложение).

письма правильны в Outlook и Yahoo.

Я должен пропустить заголовок?

self.msg = MIMEMultipart( )
fp       = open( path2img , 'rb')
msgImage = MIMEImage(fp.read())
fp.close()
msgImage.add_header('Content-ID', '<imagename>')
msgImage.add_header('Content-Disposition' , 'inline' , filename='image.png')
msgImage.add_header('Content-Type' , 'image/png')
self.msg.attach(msgImage)

мой источник изображения в теле письма:

<img src="cid:imagename">

Я искал везде и не могу понять, почему !! пожалуйста, помогите.

(мой Python может быть не очень хорош, но достаточно хорош для Outlook / Yahoo)

заранее спасибо

Ответы [ 2 ]

1 голос
/ 07 декабря 2011

Вам необходимо обратиться к значению «имя файла», а не к Content-ID. Например:

<img src="cid:image.png"/>

См. Этот вопрос для получения дополнительной информации: Отображение прикрепленного изображения в сообщении HTML

0 голосов
/ 01 ноября 2013

У меня была такая же проблема.Просто измените конструктор MIMEMultipart на:

self.msg = MIMEMultipart('related')

, и он будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...