#python #email
#python #Адрес электронной почты
Вопрос:
В настоящее время я использую библиотеку Python extract-msg для анализа почтовых адресов отправителей сотен писем, хранящихся в файле .msg на моем диске.
import extract_msg
msg = extract_msg.Message(path_to_msg_file)
sender_string = msg.sender
Это работает отлично. Поскольку я предполагаю, что некоторые адреса отправки могут быть подделаны, я хочу выяснить, какой ретранслятор (IP-адрес или имя хоста) использовался для первоначальной отправки почты. Когда я открываю один из msg-файлов в Outlook, я вижу следующую информацию в заголовке почты (я анонимизировал все имена хостов, используя HOSTNAME, и все IP-адреса, используя IP_ADDRESS .) :
Received: from HOSTNAME (10.10.211.23) by HOSTNAME
(IP_ADDRESS) with Microsoft SMTP Server (TLS) id IP_ADDRESS via Mailbox
Transport; Mon, 25 Oct 2021 07:38:40 0000
Received: from HOSTNAME (10.10.211.94) by HOSTNAME
(IP_ADDRESS) with Microsoft SMTP Server (TLS) id IP_ADDRESS; Mon, 25 Oct
2021 07:38:40 0000
Received: from HOSTNAME (185.112.125.197) by HOSTNAME
(IP_ADDRESS) with Microsoft SMTP Server (TLS) id IP_ADDRESS via Frontend
Transport; Mon, 25 Oct 2021 07:38:40 0000
…
Последняя запись в строке / запись с самой старой меткой времени должна указывать на сервер, с которого изначально приходит почта. Есть ли способ извлечь эту информацию с помощью extract-msg или любой другой библиотеки Python? Поскольку у меня сотни писем, было бы невозможно сделать это вручную с помощью Outlook.