Я использую win32com.client для извлечения некоторой информации из Outlook.Я перебираю свои электронные письма и сохраняю адрес электронной почты отправителя в списке
import win32com.client
# make connection to Outlook
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
# choose fodler and set items within folder
inbox = outlook.GetDefaultFolder(6)
messages = inbox.Items
# create list of senders
sender_list = []
# loop over items and add to dataframe
for msg in messages:
if msg.Class==43:
if msg.SenderEmailType=='EX':
sender_list.append(msg.Sender.GetExchangeUser().PrimarySmtpAddress)
else:
sender_list.append(msg.SenderEmailAddress)
Затем пытаюсь записать в файл
with open('C:/Users/Desktop/test.txt', 'w') as file_handler:
for item in sender_list:
file_handler.write("{}\n".format(item))
Список создается (удаляются фактические адреса дляконфиденциальности), но он не записывается в файл, и при этом файл не создается.
['first.last@email.com',
'first.las@email.com',
'first.las@email.com',
'first.las@email.com']
Однако, если я помещу вышеупомянутые значения в список вручную и попытаюсь записать, он запишет список в файл.
sender_list = ['first.last@email.com',
'first.las@email.com',
'first.las@email.com',
'first.las@email.com']
with open('C:/Users/Desktop/test.txt', 'w') as file_handler:
for item in sender_list:
file_handler.write("{}\n".format(item))
Я также пытался создать новый фрейм данных и добавить список в новый столбец.Это создаст список, как и другая реализация, но не добавит список в фрейм данных.
# create empty dataframe
df = pd.DataFrame()
# create list of senders
sender_list = []
# loop over items and add to dataframe
for msg in messages:
if msg.Class==43:
if msg.SenderEmailType=='EX':
sender_list.append(msg.Sender.GetExchangeUser().PrimarySmtpAddress)
# print(msg.Sender.GetExchangeUser().PrimarySmtpAddress)
else:
sender_list.append(msg.SenderEmailAddress)
# print(msg.SenderEmailAddress)
# add list to dataframe
df['Sender'] = sender_list
Попытка просмотра df
Out: df
Empty DataFrame
Columns: []
Index: []