2012-02-10 5 views
0

У меня есть файл test.html, который я хочу отправить по электронной почте (я ссылаюсь на содержимое страницы). Есть ли способ получить информацию из html и отправить ее в виде электронной почты? Если у вас есть другие идеи, пожалуйста, поделитесь.Отправка файла Html через python

+1

вы можете сделать это с питоном или anyother языка сценариев. Просто в Google есть много примеров, все, что вам нужно сделать, это убедиться, что вы устанавливаете Content-type: text/html в заголовках электронной почты, чтобы целевой объект интерпретировал его соответствующим образом. – Johnydep

ответ

2

Вот быстрый и грязный сценарий, я просто написал что может быть то, что вы ищете.

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) 
+0

Привет! Спасибо за ответ, даже если мне пришлось вручную сделать lxml из двоичного файла, так как я не нашел установщика 2.7, это то, что я хотел. –

+0

haha, да lxml может быть больно установить, но 'make_links_absolute()' довольно удобно :) рад помочь. –

1

Существует много способов чтения файлов на python, а также способы отправки писем в python. Почему бы вам не посмотреть документацию и не вернуться с некоторой ошибкой кодирования?

+1

Привет, я смотрю документацию, я спрашиваю, есть ли способ иметь страницу, сохраненную в html-файле, и импортировать содержимое в электронное письмо и отправить его. Пример, который я видел, - это как создать html-адрес электронной почты, что будет означать, что мне придется снова создать html. Это единственный способ? –