Парсер писем для бизнеса от NooSoft

Отчеты, документы и прочая бюрократия кажутся непосвященным людям излишками прошлого. Но настоящий бизнес не может существовать без цифр и бумажек. В них находится всё: от точек развития до банкротства.

На фоне обилия аналитических систем на рынке, предприниматели становятся всё более зависимыми от автоматизации и обработки материалов из различных источников.

NooSoft разработал специальный парсер писем из e-mail, и сейчас мы расскажем, зачем он бизнесу.

Парсинг e-mail для упрощения бухгалтерии

Для автоматизации многие компании используют отдельные программы для ведения бухгалтерии. В них отслеживают доходы и расходы, управляют счетами, готовят документы для налоговой и делают множество других полезных функций.

А при чём тут парсеры? При том, что в NooSoft пришел запрос:

“Моя компания N регулярно получает на почту отчеты от брокеров и финансовых организаций. Они содержат документы о проведенных транзакциях, операциях с акциями и инвестиционных доходах. Нужно автоматизировать их выгрузку из Google почты и загрузку в QuickBooks”.

Отчеты в Google почте
Отчеты в Google почте

“Интересная задача!” — подумали мы. NooSoft любит проекты, когда нужно реализовать сервисы для решения конкретных сложностей. В нашем случае это:

  1. Объем данных и их разнообразие. Сведения приходят в неструктурированном виде, и каждая финансовая организация использует разные шаблоны и форматы для представления.
  2. Интеграция с онлайн-бухгалтерией QuickBooks. Для загрузки документов необходимо, чтобы они были преобразованы в формат IIF.
  3. Риск ошибок. Ручной перенос повышает вероятность погрешностей, особенно при работе с большими объемами информации.
  4. Затраты времени. Ежедневная обработка всех электронных писем и конвертация их содержимого в пригодный для QuickBooks формат занимает много трудочасов.
Задачи для решения
Задачи для решения

Команда уточнила у клиента все требования к проекту. Чтобы не пугать вас здесь большим ТЗ, приведем краткий план разработки:

  • Необходимо приложение, которое будет выборочно извлекать данные из поступающих отчетов.
  • Информация должна преобразовываться в структурированный формат и сохраняться в виде Excel-файлов для дальнейшего ручного использования.
  • Уже готовые Excel-таблицы автоматически конвертируются в IIF формат для QuickBooks.
  • Решение должно запускаться локально без установки дополнительных программ.
Краткое ТЗ
Краткое ТЗ

Этапы работы над парсером

Конечно, всем бы хотелось, чтобы результат появлялся мгновенно. Но такие чудеса случаются только в сказках.

Каждый этап разработки парсера — от анализа HTML-структуры до создания удобных BAT-файлов — обеспечивал стабильную и быструю работу. Вот как NooSoft подошел к решению задачи и воплотил проект в жизнь.

Этап 1. Анализ задачи и выбор инструментов

Первым шагом стал подбор подходящих инструментов. Поскольку отчеты поступают в виде HTML-писем, а парсер должен работать как локальное CLI-приложение, в качестве языка разработки мы выбрали Python. Решение обусловлено его простотой установки и широкой поддержкой на устройствах.

Для парсинга HTML-структуры была использована библиотека BeautifulSoup4. Она удобно извлекает различные элементы. С её помощью мы сможем эффективно получать нужную информацию из сводок.

Технологии проекта
Технологии проекта

Этап 2. Разбор HTML-писем и выделение полезных данных

Финансовые отчеты содержат множество полей, разбросанных по разным частям HTML-документа. Чтобы парсить только необходимые сведения, команда изучила структуру и выявила закономерности.

Сначала реализовали функционал загрузки и чтения HTML-файлов, а затем — выборку конкретных материалов. Используя регулярные выражения, мы смогли находить HTML-теги и классы для получения требуемых финансовых показателей.

Структура письма
Структура письма

Этап 3. Создание алгоритма для обработки таблиц

Многие характеристики представлены в виде таблиц. Для их корректного извлечения мы разработали специальный алгоритм.

Он проходит по всем элементам таблицы и последовательно собирает данные по каждому столбцу. Такой метод предотвращает получение лишних показателей.

Этап 4. Конвертация в Excel

После успешного парсинга, материалы были готовы к сохранению. Следующим шагом для команды стала задача по записи информации в Excel, чтобы подготовить её для использования в QuickBooks.

Мы разработали автоматизированный процесс создания Excel-файлов с уникальными именами в формате даты, например, 2024-10-24_14-30. Отчеты переносились в заранее определенные столбцы, упрощая дальнейшую загрузку в бухгалтерскую систему.

Этап 5. Формат IIF для QuickBooks

Формат IIF — это стандарт QuickBooks с точным соблюдением структуры.

Для решения задачи был разработан дополнительный модуль. Он отвечает за преобразование собранной информации в IIF перед загрузкой в систему. Модуль гарантирует, что все поля будут соответствовать условиям QuickBooks. И пользователю не придется беспокоиться о несовпадениях и ошибках.

Этап 6. Обратная связь и статус выполнения в консоли

Приложение было разработано как консольное, поскольку клиент предпочел локальную десктоп-версию без подключения к сети для защиты своих данных.

Для удобства работы и контроля на каждом этапе добавлены сообщения в консоль. Пользователь видит статус с момента запуска парсинга и до успешной записи в файл. Если нужных писем для обработки нет, программа сообщает об этом. В случае успешного завершения выводится подтверждающее уведомление.

Работа приложения
Работа приложения

Такая обратная связь позволяет отслеживать процесс и оперативно реагировать на любые возможные ошибки.

Этап 7. Создание вспомогательных BAT-файлов для автоматизации

Для простой работы с приложением были созданы BAT-файлы. Они содержат команды для автоматического выполнения операций в консоли Windows.

Один из них автоматически устанавливает все необходимые зависимости для запуска программы, а другой начинает парсинг писем, находящихся в заданной папке.

Пользователь может активировать процесс несколькими кликами, не прибегая к установке лишнего софта.

Как парсер изменил бизнес?

Внедрение локального парсера обеспечило высокий уровень защиты для клиента. Приложение не передает информацию через сеть, исключая риск утечек, связанных с использованием облачных сервисов.

Парсинг сэкономил время и ресурсы. Раньше отчеты требовали ручной обработки. Теперь они загружаются в QuickBooks значительно быстрее.

Также удалось минимизировать ошибки и сохранить достоверность финансовых данных. Программа автоматически извлекает нужные показатели, следуя установленной структуре, что критично при работе с бухгалтерией.

Для удобства были добавлены BAT-файлы. Локальное консольное приложение не требует отдельной установки и в нем легко отслеживать основные шаги. Весь процесс прозрачен и прост.

Хранение реализовано на системе датированных Excel-файлов, что упрощает организацию и доступ к данным. Автоматическая датировка файлов помогает быстро находить нужные документы, облегчая учет.

Теперь клиент может обрабатывать материалы с высоким уровнем защиты, сокращая свои расходы и автоматизируя задачи.

NooSoft создает эффективные решения для бизнеса

Автообработка писем — ключ к эффективности в современной компании, прежде всего, если речь идет о больших объемах информации. Наш проект по созданию парсера для финансовых отчетов показал, как можно сократить обработку, снизить количество ошибок и обеспечить удобную интеграцию с бухгалтерскими системами.

Решение оказалось практичным и надежным, предоставив заказчику инструмент, который оптимизировал задачи и освободил время для более важных дел. Проект иллюстрирует, насколько полезно внедрение программных инструментов для улучшения повседневных операций, особенно при высоких требованиях к точности и скорости.

Автоматизация таких процессов — перспективное направление для компаний любого размера. Оно помогает повысить качество работы и поддерживает развитие бизнеса, позволяя команде сосредоточиться на стратегических целях.

Начать дискуссию