ПРОЕКТ

Скрапинг сайтов для сбора структурированных контактных данных

Индивидуальная разработка ПО, Скрапинг данных с сайтов, Извлечение контактных данных, Разработка повторно используемого скрапера, Очистка и валидация данных, Экспорт в CSV и Excel, Экспорт в JSON, Данные, готовые для CRM

  • Сфера деятельности: Маркетинговые исследования
  • Хорватия Местоположение: Хорватия
  • Срок разработки: 10 недель
  • Технологии: Python, JavaScript / TypeScript (Node.js)
3 месяцев

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

Краткое содержание

Проблема

Клиент тратит время на ручной сбор и проверку контактных данных.

Решение

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

Результат

Программа помогает сократить объём ручного сбора и повторной обработки данных в маркетинговых исследованиях.

История клиента

Клиент - компания из Хорватии, занимающаяся маркетинговыми исследованиями. Она собирает названия компаний, адреса электронной почты и номера телефонов с сайтов компаний, из открытых баз данных и веб-каталогов.

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

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

Цель была простой: извлекать выбранные контактные поля из заданных источников, при необходимости повторно запускать сбор и передавать чистые структурированные файлы.

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

Клиент хотел

  1. Извлекать контактные поля с сайтов, из баз данных, каталогов и веб-источников
  2. Запускать повторно используемый скрапер и получать его исходный код или ноутбук
  3. Очищать, проверять, упорядочивать извлечённые записи и удалять дубликаты
  4. Экспортировать структурированные данные в формате CSV, Excel, JSON или категоризированных рабочих книг

Почему готовое ПО не подошло

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

Обзор проекта

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

Для управления сбором из одного или нескольких источников создан экран мониторинга извлечения. Он отображает статус запуска, URL-адреса источников, извлечённые записи и примечания о загрузке или доступе.

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

Последний экран предназначен для практичной передачи данных. Он экспортирует упорядоченные записи в формате CSV, Excel или JSON, сохраняя инструкции по настройке или примечания к процессу.

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

Реализованные ключевые функции

  • Настройка списка сайтов и источников
  • Извлечение выбранных контактных полей
  • Повторно используемый и перезапускаемый скрапинг
  • Мониторинг запуска извлечения
  • Сбор адресов электронной почты и номеров телефонов
  • Валидация и очистка записей
  • Обнаружение и удаление дубликатов
  • Категоризация контактных данных
  • Экспорт в CSV, Excel и JSON

Можно добавить

+ Регулярные обновления базы данных Excel + Проверка электронной почты и домена + Категоризация по ключевым словам + Категоризация по датам + Проверка исходного кода + Дополнительные методы скрапинга

Кому ещё может подойти это решение

У этих компаний похожие задачи, и то же решение можно адаптировать под их источники, поля и правила передачи данных.

Компания, оказывающая бизнес-услуги

Задача Собирает данные о компаниях и контактах с открытых сайтов и из каталогов.
Как помогает решение Решение извлекает выбранные поля, удаляет дубликаты и подготавливает файлы для импорта в CRM или развития бизнеса.

Компания, оказывающая профессиональные услуги

Задача Создаёт списки контактов на основе сайтов компаний и веб-источников.
Как помогает решение Решение собирает адреса электронной почты, номера телефонов и данные о компаниях в структурированные файлы.

Технологический стек

Python

Скрапинг и автоматизация браузера

Python поддерживает обход сайтов, парсинг страниц и извлечение данных через браузер.

JavaScript / TypeScript (Node.js)

Обработка структурированных файлов

JavaScript и TypeScript поддерживают обработку структурированных файлов.

Scrapy

Обход и скрапинг сайтов

Scrapy (фреймворк для обхода и скрапинга сайтов) собирает записи из заданных источников.

BeautifulSoup

Парсинг HTML-страниц

BeautifulSoup (библиотека для чтения информации с сайтов) парсит содержимое страниц и находит заданные поля.

selenium

Извлечение данных через браузер

selenium (инструмент управления веб-браузером) поддерживает извлечение данных, когда загрузка требует браузера.

csv-parse

Чтение и парсинг CSV

csv-parse (библиотека Node.js для чтения CSV-файлов) считывает структурированные данные CSV.

maatwebsite/excel

Экспорт Excel и CSV

maatwebsite/excel (пакет Laravel для файлов Excel и CSV) поддерживает передачу упорядоченных таблиц.

jsonify

Обработка данных JSON

jsonify (библиотека JavaScript для работы с JSON) поддерживает записи JSON без изменения глобальных объектов.

CSV, Excel, JSON

Передача структурированных данных

Эти форматы содержат упорядоченные контактные записи для анализа, импорта в CRM и других бизнес-задач.

Интеграции

CRM systems

Решение экспортирует упорядоченные контактные записи в форматах, подходящих для импорта в CRM.

Excel

Решение экспортирует категоризированные контактные данные и упорядоченные рабочие книги в файлы Excel.

CSV files

Решение читает и записывает контактные записи, разделённые запятыми, для структурированного обмена данными.

JSON files

Решение передаёт структурированные записи в формате JSON системам, которые его используют.

Email verification service

Сервис проверки электронной почты может проверять адреса электронной почты и домены перед передачей данных.

Результат

Задайте точные источники и поля перед сбором

Первый экран помогает точно сформировать запрос на извлечение. URL-адреса сайтов, списки источников и выбранные контактные поля определяют, что соберёт скрапер.

Как это работает

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

Настройка источников и полей

Функции этого экрана
Скрапинг данных с сайтов Скрапинг адресов электронной почты Извлечение номеров телефонов Извлечение физических адресов

Просматривайте ход извлечения и собранные записи

Экран мониторинга извлечения объединяет URL-адреса источников, статус запуска и извлечённые записи. Предупреждения о доступе и примечания о загрузке делают поведение источников видимым во время сбора.

До этапа очистки команда видит записи, полученные с одного или нескольких сайтов.

Как это работает

  1. Scrapy (фреймворк для обхода и скрапинга сайтов) собирает данные из перечисленных источников.
  2. BeautifulSoup (библиотека для парсинга веб-страниц) читает содержимое сайтов и извлекает заданные поля.
  3. Программа отображает статус запуска, URL-адреса источников, извлечённые данные и примечания о загрузке или доступе.
  • Извлечение поддерживает несколько страниц и сайтов.
  • Скрапер можно повторно запускать с повторно используемыми правилами.
Примечание: Правила сбора должны учитывать поведение сайта, условия платформы, законы о конфиденциальности, GDPR и другие применимые требования.
Мониторинг запуска извлечения

Мониторинг запуска извлечения

Функции этого экрана
Скрапинг данных с сайтов Извлечение данных

Подготовьте более чистые контактные записи

Экран очистки даёт специалисту по данным единое место для проверки: статус валидации, совпадения дубликатов и категории. Перед экспортом контактные записи остаются упорядоченными.

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

Как это работает

  1. Программа отображает адреса электронной почты, номера телефонов и почтовые адреса в таблице контактов.
  2. Программа сравнивает записи и отображает совпадения дубликатов и статус валидации.
  3. Программа применяет категории к упорядоченным контактным записям.
  • Записи можно категоризировать по датам или ключевым словам.
  • Сервис дедупликации данных может помогать предотвращать появление дубликатов.
Очистка записей и удаление дубликатов

Очистка записей и удаление дубликатов

Функции этого экрана
Упорядочивание контактных данных Предотвращение дубликатов Сервис дедупликации данных Очистка больших наборов данных Категоризация данных Извлечение контактных данных

Передавайте данные в формате, используемом командой

Экран экспорта превращает проверенные записи в удобный формат для анализа или импорта в CRM. CSV, Excel и JSON сохраняют гибкость формата передачи без изменения исходных полей.

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

Как это работает

  1. Программа подготавливает упорядоченные контактные записи для экспорта в CSV, Excel или JSON.
  2. Программа создаёт сводку файла в выбранном формате.
  3. Программа добавляет ссылки на инструкции по настройке или примечания к процессу.
  • CSV-файлы поддерживают структурированный обмен данными.
  • Файлы Excel поддерживают категоризированные рабочие книги.
  • JSON-файлы поддерживают обмен данными между системами.
Настройки экспорта и передачи

Настройки экспорта и передачи

Функции этого экрана
Экспорт списков контактов компаний Инструмент экспорта в Excel Управление данными CSV

Что предлагает решение

С помощью этого решения компания, занимающаяся маркетинговыми исследованиями, может:

  • Собирать выбранные контактные и корпоративные поля из заданных веб-источников
  • Повторно запускать правила извлечения для регулярного сбора данных
  • Проверять статус валидации и совпадения дубликатов перед передачей
  • Упорядочивать записи по категориям, например по датам или ключевым словам
  • Экспортировать чистые контактные данные для анализа и импорта в CRM
  • Сохранять повторно используемый код, инструкции по настройке и примечания к процессу

Справились бы готовые системы с этой задачей?

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

Что нужно клиенту API для веб-скрапинга Zyte, Scrapfly, ScrapingBee Инструменты веб-скрапинга Octoparse, Oxylabs ПО для извлечения данных Data Extraction Индивидуальное решение
Извлечение контактных полей из источников частично
Повторный запуск скрапера с исходным кодом — частично частично
Очистка записей и удаление дубликатов — частично
Экспорт структурированных контактных файлов
Соответствие собственным правилам клиента: этапы, роли, отчёты — — —
Все этапы в одном месте — — —
Отсутствие ручных этапов между программами частично — частично

На основе публичных описаний продуктов и их категорий.

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

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

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

Итоговый результат

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

FAQ

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