Python-скрипт: парсинг реестров 1С для B2B-писем с персонализацией по цехам
-
В B2B на заводах тонны данных о покупателях лежат в 1С. Парсинг реестров вытаскивает их в удобный формат. Скрипт на Python автоматизирует это: достает контакты, сегментирует по цехам и генерит персонализированные письма. Экономит часы на ручной разборке таблиц и повышает конверсию лидов.
Проблема знакомая: менеджеры копируют данные из 1С в Excel, потом вручную дописывают текст под каждого. Результат - шаблонные спам-письма, которые летят в корзину. Этот скрипт меняет подход: парсит реестр, анализирует цеха и подставляет релевантные боли в текст. Готовые лиды без нервов.
Как скрипт цепляется к 1С и парсит реестры
Подключение к 1С через Python - не мистика, а COM-интерфейс или ODBC. Скрипт запускает запрос к базе, достает таблицы покупателей: ФИО, email, цех, последние заказы. Данные фильтруются по активности - только те, кто покупал за год. Потом BeautifulSoup или pandas разбирает структуру на чистые списки.
Пример: в реестре 500 контрагентов с нефтегазового цеха. Скрипт группирует их по подотраслям - бурение, трубопроводы. Для каждого подставляет персонализацию: ‘Ваш цех на бурении тратит 20% на простои - вот наше решение’. Без этого письма - серый шум в inbox. Скрипт делает их острыми, как G-код для Fanuc.
- Установка зависимостей:
pip install pywin32 pandas openpyxl requests smtplib- для 1С, таблиц и почты. - Подключение к 1С:
import win32com.client; app = win32com.client.Dispatch('V83.COMConnector')- база открывается за секунды. - Парсинг реестра:
df = pd.read_sql_query('SELECT * FROM Buyers WHERE Active=1', conn)- данные в DataFrame. - Сегментация по цехам:
df.groupby('Workshop')['email'].apply(list)- готовые группы для писем.
Параметр Описание Пример значения Workshop Цех покупателя ‘Нефтегаз-Бурение’ LastOrder Последний заказ ‘2025-03-15’ PersonalPain Боль цеха ‘Простои на 15%’ Персонализация писем под цеха: от шаблона к хиту
Шаблон письма - скелет: тема, приветствие, боль, предложение, CTA. Скрипт подставляет данные из парсинга. Для энергетики - упор на надежность, для химпрома - на безопасность. Тема генерится динамически: ‘Для цеха {workshop}: сократите {pain} на 30%’.
Реальный кейс: парсим 200 email из пищевой отрасли. Скрипт видит цех ‘Консервация’ - вставляет ‘Ваша линия простаивает из-за износа - запчасти под Fanuc в 2 раза дешевле’. Открываемость подскакивает с 15% до 42%. Менеджер только проверяет и жмет ‘отправить’. Автомат - это когда код тащит лиды.
- Генерация темы:
subject = f"{df['workshop'][i]}: решение {df['pain'][i]}"- коротко, персонально. - Текст тела: Jinja2 шаблоны для подстановки -
template.render(name=contact, pain=pain). - Массовый рассылка:
smtplibс Gmail или корпоративным SMTP - батч по 50 писем.
# Пример фрагмента скрипта for index, row in df.iterrows(): workshop = row['workshop'] pain = pains.get(workshop, 'стандартная боль') email_body = f"Уважаемый {{row['name']}}, в цехе {workshop} типичная проблема - {pain}. Наше решение..." send_email(row['email'], subject, email_body)Нюанс: проверяй лимиты SMTP - не больше 100/час, иначе бан.
Структура скрипта: от парсинга до отправки
Скрипт делится на модули: connect_1c.py для базы, parse_buyers.py для данных, personalize.py для писем, sender.py для рассылки. Конфиг в YAML - email, пароль, фильтры. Запуск по крону: каждую пятницу парсит свежий реестр и шлет обновления.
Пример аргументов: нефтегаз - фокус на трубах, металл - на ЧПУ-инструменте. Скрипт сам подтягивает из 1С историю заказов, считает средний чек. Выход - CSV с готовыми письмами или прямая отправка. Тестируй на 10 контактах, масштабируй на тысячи.
- config.yaml:
smtp_server: smtp.gmail.com, filters: {active: true, workshop: 'Нефтегаз'}. - parse_and_personalize(): Объединяет парсинг и шаблон - возвращает список писем.
- send_batch(): Рассылка с задержками -
time.sleep(2)между письмами. - Логи: Все в файл - успех, фейлы, метрики открытий через read receipts.
Шаг Время Выход Парсинг 1С 30 сек DataFrame 1000 строк Персонализация 10 сек 1000 шаблонов Рассылка 5 мин Отчет в лог Когда скрипт тащит конверсию на новый уровень
Автомат парсит, персонализирует и шлет - менеджер фокусируется на звонках. Осталось доработать: A/B-тесты тем, интеграцию с Telegram-ботом для апрува. Подумай над GDPR - только opt-in контакты. В B2B это не хак, а стандарт - кто не автоматизирует, тот вручную лиды теряет.
- Установка зависимостей:
Здравствуйте! Похоже, вас заинтересовал этот пост, но у вас ещё нет аккаунта.
Надоело каждый раз пролистывать одни и те же посты? Зарегистрировав аккаунт, вы всегда будете возвращаться на ту же страницу, где были раньше, и сможете выбирать, получать ли уведомления о новых ответах (по электронной почте или в виде push-уведомлений). Вы также сможете сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост мог бы стать ещё лучше 💗
Зарегистрироваться Войти© 2022 - 2026 InvestSteel, Inc. Все права защищены.