У меня есть файл test.html, который я хочу отправить по электронной почте (я ссылаюсь на содержимое страницы). Есть ли способ получить информацию из html и отправить ее в виде электронной почты? Если у вас есть другие идеи, пожалуйста, поделитесь.Отправка файла Html через python
ответ
Вот быстрый и грязный сценарий, я просто написал что может быть то, что вы ищете.
https://gist.github.com/1790847
"""
this is a quick and dirty script to send HTML email - emphasis on dirty :)
python emailpage.py http://www.sente.cc
made to answer: http://stackoverflow.com/questions/9226719/sending-a-html-file-via-python
Stuart Powers
"""
import lxml.html
import smtplib
import sys
import os
page = sys.argv[1] #the webpage to send
root = lxml.html.parse(page).getroot()
root.make_links_absolute()
content = lxml.html.tostring(root)
message = """From: Stuart Powers <[email protected]>
To: Stuart Powers <[email protected]>
MIME-Version: 1.0
Content-type: text/html
Subject: %s
%s""" %(page, content)
smtpserver = smtplib.SMTP("smtp.gmail.com",587)
smtpserver.starttls()
smtpserver.login("[email protected]",os.environ["GPASS"])
smtpserver.sendmail('[email protected]', ['[email protected]'], message)
Привет! Спасибо за ответ, даже если мне пришлось вручную сделать lxml из двоичного файла, так как я не нашел установщика 2.7, это то, что я хотел. –
haha, да lxml может быть больно установить, но 'make_links_absolute()' довольно удобно :) рад помочь. –
Существует много способов чтения файлов на python, а также способы отправки писем в python. Почему бы вам не посмотреть документацию и не вернуться с некоторой ошибкой кодирования?
Отправка сообщений электронной почты в Python: http://docs.python.org/library/email-examples.html
Чтение файлов в Python: http://docs.python.org/tutorial/inputoutput.html
Привет, я смотрю документацию, я спрашиваю, есть ли способ иметь страницу, сохраненную в html-файле, и импортировать содержимое в электронное письмо и отправить его. Пример, который я видел, - это как создать html-адрес электронной почты, что будет означать, что мне придется снова создать html. Это единственный способ? –
вы можете сделать это с питоном или anyother языка сценариев. Просто в Google есть много примеров, все, что вам нужно сделать, это убедиться, что вы устанавливаете Content-type: text/html в заголовках электронной почты, чтобы целевой объект интерпретировал его соответствующим образом. – Johnydep