On 12/09/19 5:06 PM, Srinivas Pullabhotla wrote:
Hello,
I am trying to fetch email messages from a gmail inbox. So, there will be 1000s
of messages sent to Inbox and since they are 1000s, the emails are grouped 100
per each email item.
When I tried this method, the program only fetches some but not all and
especially it happens with grouped email messages. How can I get all the
messages from that grouped email.
import email, time, sys
from imapclient import IMAPClient
with IMAPClient(HOST) as server:
server.login(USERNAME, PASSWORD)
server.select_folder('INBOX', readonly=True)
messages = server.search(['ALL', 'UNSEEN'])
for uid, message_data in server.fetch(messages, 'RFC822').items():
email_message = email.message_from_bytes(message_data[b'RFC822'])
print(email_message.get_payload(None, True))
The program should fetch all the email messages from the grouped email and
output to the file (in my case I am grabbing the href links). How best I can
achieve this ? Appreciate thoughts and suggestions.
First debug is to assign the server.select_folder() return values, and
subsequently print them for inspection. (know what you are dealing
with/that you have been given something to work with)
The server.search() doesn't request ALL of the msgs. Are you sure those
missing from the 'group' are not marked as 'read'? So, second debug
would be to remove the 'UNSEEN' criteria and observe any difference.
--
Regards =dn
--
https://mail.python.org/mailman/listinfo/python-list