Here is my code:
import imaplib
from email.parser import HeaderParser
conn = imaplib.IMAP4_SSL('imap.gmail.com')
conn.login('example@gmail.com', 'password')
conn.select()
conn.search(None, 'ALL')
data = conn.fetch('1', '(BODY[HEADER])')
header_data = data[1][0][1]
newdata = header_data.decode('utf-8')
parser = HeaderParser()
msg = parser.parsestr(newdata)
print (msg.keys())
labels = conn.fetch('1:100', (X-GM-LABELS))
print (labels)
When i print out labels, it does print out the x-GM-labels from each email header(which is the folder what the email is in). However, it only prints out Important, and sent x-gm labels. I have around 60 emails in my inbox within the 1:100 range. So, why does it not print out the inbox? it simply prints (). Here is the print out so you can see it properly.
'OK', [b'50 (X-GM-LABELS ())', b'51 (X-GM-LABELS ())', b'52 (X-GM-LABELS ())', b'53 (X-GM-LABELS ())', b'54 (X-GM-LABELS ())', b'55 (X-GM-LABELS ())', b'56 (X-GM-LABELS ())', b'57 (X-GM-LABELS ())', b'58 (X-GM-LABELS ("\\\\Important"))', b'59 (X-GM-LABELS ())', b'60 (X-GM-LABELS ())', b'61 (X-GM-LABELS ())', b'62 (X-GM-LABELS ())', b'63 (X-GM-LABELS ())', b'64 (X-GM-LABELS ())', b'65 (X-GM-LABELS ("\\\\Important"))', b'66 (X-GM-LABELS ())', b'67 (X-GM-LABELS ())', b'68 (X-GM-LABELS ())', b'69 (X-GM-LABELS ())', b'70 (X-GM-LABELS ())', b'71 (X-GM-LABELS ())', b'72 (X-GM-LABELS ())', b'73 (X-GM-LABELS ())', b'74 (X-GM-LABELS ("\\\\Important"))', b'75 (X-GM-LABELS ("\\\\Important"))', b'76 (X-GM-LABELS ())', b'77 (X-GM-LABELS ("\\\\Important"))', b'78 (X-GM-LABELS ())', b'79 (X-GM-LABELS ("\\\\Important"))', b'80 (X-GM-LABELS ("\\\\Important"))', b'81 (X-GM-LABELS ("\\\\Important"))', b'82 (X-GM-LABELS ())', b'83 (X-GM-LABELS ())', b'84 (X-GM-LABELS ())', b'85 (X-GM-LABELS ("\\\\Important"))', b'86 (X-GM-LABELS ())', b'87 (X-GM-LABELS ())', b'88 (X-GM-LABELS ())', b'89 (X-GM-LABELS ())', b'90 (X-GM-LABELS ())', b'91 (X-GM-LABELS ())', b'92 (X-GM-LABELS ())', b'93 (X-GM-LABELS ())', b'94 (X-GM-LABELS ())', b'95 (X-GM-LABELS ())', b'96 (X-GM-LABELS ())', b'97 (X-GM-LABELS ("\\\\Important"))', b'98 (X-GM-LABELS ())', b'99 (X-GM-LABELS ())', b'100 (X-GM-LABELS ("\\\\Important"))'])
So b'50 should be:
b'50 (X-GM-LABELS (\\\\Inbox))
but instead its just:
b'50 (X-GM-LABELS ())'