темный логотип proxyscrape

Веб-скрапинг для генерации свинца: Тысячи ссылок у вас под рукой

Скрапбукинг, Мар-05-20215 минут чтения

Оглавление

Почему генерация свинца имеет значение

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

Каждая продажа начиналась с лида

Продажи происходят из лидов. В отчете Technology Content Marketing: Benchmarks, Budgets and Trends report, подготовленный Content Marketing Institute и MarketingProfs, подчеркивает, что 77 % технологических маркетологов используют маркетингово-квалифицированные лиды для стимулирования продаж (по сравнению с 64 % в 2019 году).

Квалифицированных клиентов легче конвертировать, потому что это люди (или компании), которые уже проявили интерес к вашему продукту или услуге. Определив свою целевую аудиторию и направив маркетинговые усилия именно на них, вы сэкономите время и энергию отдела продаж, чтобы они могли сосредоточиться на наиболее качественных потенциальных клиентах.

Сила Интернета на кончиках ваших пальцев

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

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

Сегодня в этом нет необходимости. Если вам нужен список мексиканских ресторанов на восточном побережье или школ K-12 в вашем штате, вы можете найти его в Интернете. Компании, работающие в сфере B2B, могут быстро и легко создать базу данных потенциальных клиентов, затем отфильтровать этот список и отправить индивидуальные маркетинговые сообщения.

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

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

Что такое веб-скраппинг?

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

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

Как работают веб-скреперы?

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

  • Названия компаний
  • Номера телефонов
  • Адреса электронной почты
  • Почтовые адреса
  • Адреса сайтов

Когда веб-скрепер загружает страницу, он считывает исходный код в поисках шаблонов. В зависимости от того, с какого сайта вы берете данные, он может просто искать то, что соответствует шаблону 123-456-78901 для телефонного номера или [email protected] для адреса электронной почты.

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

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

Проблемы, связанные с использованием скребков

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

Некоторые веб-сайты пытаются защитить конфиденциальность своих пользователей и собственные серверные ресурсы, пытаясь блокировать веб-скреперы. Для этого существует несколько вариантов, включая проверку "агента пользователя", возвращаемого клиентским программным обеспечением, и ограничение количества запросов на страницы, поступающих с определенного IP-адреса.

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

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

Выбор источников данных для получения высококачественных ссылок

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

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

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

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

Тщательно выбирайте источник данных

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

Работают ли еще эти предприятия? Правильны ли контактные данные? Похоже ли, что владелец каталога проверяет информацию перед добавлением?

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

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

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

Рассмотрите сайты, которые требуют входа

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

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

В целом, если имеется API, лучше собирать данные с помощью этого API, чем использовать веб-скрепинг. У вас будет гораздо меньше шансов столкнуться с проблемами с владельцами сайтов, и вам будет проще очистить данные, полученные через API.

Правильно стройте запросы

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

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

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

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

Некоторые хорошие варианты включают в себя:

  • Скребок
  • ProWebScraper
  • Scrapy

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

ProWebScraper - это более продвинутый инструмент, имеющий бесплатную и премиум-версии. Бесплатный инструмент может использоваться для соскабливания до 100 страниц, что означает, что его будет достаточно для небольшого нишевого бизнеса. ProWebScraper довольно прост в использовании для программ для скрапинга, имеет интерфейс "наведи и щелкни" и заранее разработанные правила, которые позволят вам настроить скрапинг, даже если вы не уверены в технической стороне.

ProWebScraper может загружать изображения и создавать дампы в формате JSON, CSV или XML. Его можно даже настроить на соскабливание сайтов по расписанию, чтобы вы могли собирать данные и обновлять маркетинговые записи.

Scrapy - это бесплатный фреймворк для сбора данных с открытым исходным кодом. Этот инструмент требует технических знаний, но он быстрый, гибкий и может использоваться для сбора больших объемов данных. Scrapy можно запустить на собственном компьютере под управлением Linux, OS X, Windows или BSD или на веб-сервере.

Существует активное сообщество Scrapy, включая IRC-чат, Reddit и StackOverflow. Вы можете обратиться за советом к сообществу и, возможно, воспользоваться расширениями или модулями, созданными сообществом, что позволит раскрыть возможности Scrapy, даже если вы сами не являетесь уверенным разработчиком.

Кодирование собственного скребка

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

Существует несколько бесплатных фреймворков с открытым исходным кодом, которые можно использовать для создания скрепера на популярных языках, таких как Python, Perl, Java, R или PHP.

Одной из самых популярных библиотек для веб-скрапинга является BeautifulSoup. Это инструмент для скраппинга на языке Python, способный быстро и легко извлекать данные из HTML или XML-файлов. Для его использования вам понадобятся некоторые знания в области программирования, но он сделает за вас большую часть детальной работы, избавив вас от необходимости изобретать колесо.

После извлечения данных вы можете экспортировать их в CSV-файл или отобразить в различных форматах с помощью библиотеки обработки данных, например Pandas.

Плюсы и минусы кодирования собственного скребка

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

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

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

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

В зависимости от задачи может быть выгоднее заплатить за инструмент, чем писать его на заказ.

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

  • Использование User-Agent для идентификации вашего бота
  • Как обрабатывать аутентификацию для сайтов, требующих входа в систему
  • Соблюдение всех положений и условий веб-сайта
  • Ограничение скорости запросов, чтобы избежать чрезмерной нагрузки на сайт
  • Отправка правильно сформированных запросов
  • Использование (и регулярная ротация) прокси-серверов
  • Дезинфекция любой информации, возвращаемой сервером
  • Правила защиты данных о том, как и где вы храните возвращенную информацию
  • Решение проблемы CAPTCHA

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

Золотые правила веб-скрапинга

Если вы решите написать свой собственный скребок, не забывайте "быть вежливым". Приложите все усилия, чтобы скрапер вел себя тактично: отправляйте правильно сформированные запросы, делайте скрап медленно и используйте диапазон IP-адресов при скрапе.

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

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

Изучите информацию в файле Robots.txt сайта. Если там есть страницы, веб-мастер не хочет, чтобы они индексировались. Игнорировать это было бы неэтично.

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

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

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

Устранение неисправностей скребка

Существует несколько потенциальных проблем, с которыми вы можете столкнуться при работе скрепера. К ним относятся:

  • Ваш IP заблокирован веб-мастером
  • Вебмастер заблокировал ваш клиент для сбора информации
  • Ваш скребок запутался при попытке перейти на сайт
  • Мусорные данные собираются с помощью "медовых ботов", спрятанных на сайтах
  • Ограничение скорости, препятствующее быстрой работе скребка
  • Изменения в дизайне сайта ломают скребок, который раньше работал

Хорошая новость заключается в том, что все эти проблемы можно решить, если понять, как работают скреперы.

Простые веб-скреперы работают по определенной схеме:

  1. Скрепер отправляет HTTP-запрос на веб-сайт
  2. Веб-сайт отправляет ответ, как и обычный веб-браузер.
  3. Скрепер считывает ответ, ища шаблон в HTML.
  4. Шаблон извлекается и сохраняется в файле JSON для последующей обработки.
  5. После этого скрепер может либо продолжить чтение ответа в поисках новых деталей, либо отправить следующий запрос

Есть несколько областей, где все может пойти не так.

Скребок не получает никаких данных

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

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

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

Попробуйте изменить User-Agent, который определяет ваш скрепер, на такой, чтобы он выглядел как современный веб-браузер, например Firefox или Chrome. Это может помочь вам обойти простые ограничения на некоторых сайтах.

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

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

Скребок работает некоторое время, а затем останавливается

Еще одна распространенная проблема - скрепер работает некоторое время, а затем перестает работать. Обычно это означает, что сайт заблокировал ваш IP-адрес, временно или постоянно, потому что вы отправили слишком много запросов за короткое время.

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

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

Помните, что скрепер может работать в фоновом режиме 24 часа в сутки без перерывов. Даже если вы ограничите скорость работы скрепера до парсинга одной страницы каждые 15-30 секунд, он будет работать быстрее, чем человек.

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

Скребок запутался и перебирает бесконечное количество страниц

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

Представим, что задача вашего скрепера - найти список каменщиков в вашем городе, и вы отправляете его в каталог, где он осуществляет поиск. Скрепер должен:

  • Отправьте HTTP-запрос, содержащий нужную строку поиска
  • Загрузите страницу с результатами
  • Разберите страницу результатов, чтобы найти ссылку на первый результат
  • Откройте эту ссылку
  • Извлеките контактные данные с этой новой страницы
  • Продолжайте разбирать страницу результатов, чтобы найти второй результат
  • Откройте эту ссылку
  • И так далее...

Некоторые веб-сайты содержат "медовые точки", которые заманивают ботов в ловушку и сбивают их с толку. Эти "медовые точки" представляют собой фрагменты HTML, которые снабжены тегом display, говорящим "display:none", поэтому они не отображаются в обычном браузере. Однако боты видят их, и если они не настроены на их игнорирование, то будут обрабатывать их так же, как обычный HTML.

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

Этичный маркетинг: Используйте набранные ссылки с умом

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

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

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

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

Очищайте и поддерживайте свою базу данных

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

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

При управлении маркетинговыми кампаниями следует помнить и о других вещах:

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

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

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

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

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