Как заполнить форму из строки в текстовом файле - python механизировать - PullRequest
2 голосов
/ 16 февраля 2020

У меня есть веб-приложение (example.com) для отправки электронной почты. Я хочу отправить письмо на несколько адресов электронной почты из списка, которые хранятся в mailing_list.txt. Для этого я использовал python с модулем механизации.

Этот код работает, но письма не доставляются.

#!/bin/python
import mechanize

sender = raw_input("Enter sender email : ")
subject = raw_input("Subject : ")
msg = raw_input("Enter message : ")
filename = raw_input("Attachment location e.g. /home/user/test.txt : ")

file_list = []
f = open('/home/user/mailing_list.txt', 'r')

for line in f.xreadlines():
    url = "http://example.com/"    
    file_list.append([line]) 
    br = mechanize.Browser()
    br.set_handle_robots(False)   
    br.set_handle_refresh(False)
    br.open(url)
    br.form = list(br.forms())[0]
    br["from"] = sender
    br["to"] = line
    br["subject"] = subject
    br["msg"] = msg
    br.form.add_file(open(filename,'rb'),'text/txt',filename,name='file') 
    response = br.submit()
    responder = response.code
    print "Code = " + str(responder)
    print "e-mail sent to: " + line

В чем может быть проблема? От респондента я получаю код 200, а также я получаю электронную почту, отправленную на каждый адрес электронной почты из списка / файла.

 print "Code = " + str(responder)
 print "e-mail sent to: " + line

Также, если я добавлю строки:

 print br["to"]

или / и

print line

Я получаю правильный ответ. Я имею в виду, он печатает текущий адрес электронной почты из списка.

...