Я використовую машину Linux (Debian) і встановлюю на ній fetchmail і procmail. Зараз він здатний отримувати повідомлення, надіслані на мою адресу Gmail кожну хвилину. Проте файл, отриманий за допомогою fetchmail, не є звичайним HTML-файлом, але містить символи, що друкуються за допомогою цитат.
Моя мета полягає в тому, щоб мати можливість отримати вихідний код HTML електронної пошти, так само, як я б міг зробити, якщо я відкрию Outlook у Windows, клацніть правою кнопкою миші на пошті і виберіть "Показати вихідний код".
Також важливо, щоб це було можливо зробити програмно, оскільки я хочу автоматизувати завдання.
Редагувати: У моєму початковому питанні не вистачає точності, тому тут наведено більше інформації про мою проблему. Один з моїх клієнтів надсилає мені поштову електронну пошту щодня, що містить таблицю з даними про продаж попереднього робочого дня. Зараз, кожен день, я повинен скопіювати дані з електронного листа в файл EXCEL. Однак, оскільки це дуже повторюване завдання, я хочу мати рішення, яке може зробити це для мене автоматично. Я знаю, як записати дані в файл EXCEL з Python, і я маю деяку уяву, як отримати інформацію з HTML-документа з деякими бібліотеками Python.
Тому я вирішив використовувати crontab з Linux, fetchmail і procmail, щоб зробити наступне: кожну хвилину я перевіряю свій поштовий ящик, якщо отримав листа від мого клієнта. Якщо це так, я запускаю скрипт python на цьому файлі, щоб отримати інформацію. Після цього я вводжу цю інформацію до файлу EXCEL і надсилаю її собі.
Сценарій прекрасно працює на моєму ПК з вихідним кодом HTML електронної пошти, яку я отримав від Outlook. Однак на моїй машині Linux вона не працює. Я відкрив вихідний код файлу електронної пошти з моєї машини Linux і з'ясував, що частина HTML-коду була змінена.
fetchmailмає бути у форматі MIME для багатоабонентських повідомлень (що він містить "символи, що містять цитований текст"). Багато листів клієнтів надсилати електронну пошту як в текстовому, так і в HTML, як різні частини MIME, але немає жодної гарантії, що пошта, адресована вам, містить HTML взагалі (якщо, наприклад, gmail не додає його, якщо вона відсутня). Можна використовуватиmetamailдля вилучення різних частин, включаючи HTML.