Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > изъятие почты через pop3 протокол


Автор: pablo 21.11.2006, 14:11
Как можно средствами питона получить текс ел. письма, используя поп3 протокол ?
Делаю вот как: 

Код

#!/usr/bin/python

import poplib
import string, random
import StringIO, rfc822


class Server:
    def __init__ (self, serverName, user, password):
        self.m_server = poplib.POP3_SSL(serverName)
        self.m_server.user(user)
        self.m_server.pass_(password)
#        self.m_resp, self.m_items, self.m_octets = self.m_server.list()
        self.m_messagesInfo = self.m_server.list()[1]
        self.m_numMessages = len(self.m_messagesInfo)
        self.m_file = file("messages.txt", "w");


    def __str__(self):
        return "server"

    def printAllMessages(self):
        emails = []
        for msg in self.m_messagesInfo:
            msgNum = int(string.split(msg, ' ')[0])
            msgSize = int(string.split(msg, ' ')[1])

            message = self.m_server.retr(msgNum)[1]
            message = string.join(message, '\n')
            emails.append(message)

        for a in emails:
            file.write(a)
            print a
            
        
def main():
    SERVER = "pop.gmail.com"
    USER  = "anonymous"
    PASSWORD = "********"

    server = Server(SERVER, USER, PASSWORD)
    server.printAllMessages()
    
 

    



if __name__ == '__main__':
    main()




но сейчась я получаю всё сообщение, даже с добавлеными файлами. Можно ли как нить получить только текст сообщения и его заголовок т.е адресс отправителя, тему, а остальную инфу игнорировать ? если можно то как ? 

Заранее благодарен.

Автор: albertn 22.11.2006, 09:45
Может просто нужен парсер для сообщений, который просто будет выдергивать заголовки?
Вот к примеру родной, можешь посмотреть
http://docs.python.org/lib/module-email.parser.html
или
http://docs.python.org/lib/module-mimetools.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)