Web Scraping – что это такое и зачем он нужен
Списки товаров и услуг, спортивная аналитика, цены и их отличия. Всем этим успешно занимаются специальные программы в наше время, нет особого смысла тратить бесконечные часы на тот же сбор информации но вручную. Если вы склоняетесь к автоматизации всех этих процессов, то вам пора разобраться в том что же такое “Веб скрейпинг?”
Что такое веб-скрейпинг?
Web scraping — это целая цепочка действий и процессов от специализированных программ, в полностью автоматическом режиме. У нас привыкли называть подобное парсингом данных, а программы с помощью которых ведётся аналитика и сборы данных — парсерами. Когда англоговорящие “To scrape ….” мы говорим “спарсить”. Таким образом мы можем сделать вывод что перед слова скрейпинг совсем не литературный 🙂 Это нужно учитывать. К скрепам и скрабам отношения эти процессы не имеют никакого. Ну, только если информацию о них не собирать.
Как это работает?
Для начала мы запускает программу и грузим туда интересующие нас адресы вебресурсов, добавляем инстересующие нас слова и фразы, числа или ещё какие данные, которые мы хотим собрать. Когда базовые манипуляции произведены мы запускаем “шайтан машину” и она полностью выводит то что нас интересовала в файл, тип которого мы тоже можем выбрать, хоть в Excel грузите. Как вам удобно.
Конечно же в файле будет всё аккуратно и последовательно структурировано, а не просто набор символов, что логично.
Какая цель у веб скрейпинга?
Совсем не иллюзорная. Очень часто используется в коммерческих целях, в плане повышения эффективности своих продаж. Вы можете сравнивать ценники на схожие товары с вашими конкурентами, или же то как они ведут описание, или вовсе сравнивать сами товары между собой. В итоге вы получите все необходимые данные, с которыми уже будете работать в паре с аналитиком. Конечно, это можно сделать и самостоятельно, вручную, но сколько времени это займет? А ведь время = деньги.
Получается, делаем вывод: парсингом(он же скейпинг) занимаются те, кто хочет заняться анализом своего или чужого контента. Цели различаются от пользователя к пользователю, конечно.
Каким местом прокси в работе скрейпинга?
В web data scraping без прокси не получится совсем никак. Существует как минимум 2 причины для необходимости услуг прокси серверов.
Вы игнорируете лимит на кол-во запросов на веб-сайт
Пожалуй все вебресурсы, которые написаны не на ucoz’e в 2010 году, имеют хоть какую-то защиту от фрод систем. Если слишком часто обновлять сайт то он решит, что это DDOS атака. Финал подобной истории прозаичен как никогда — доступ к ресурсу будет заблокирован и вы не сможете получать с него данные.
Скрейпинг составляет большой поток обращений к сайту. А значит существует вполне реальный риск нарваться на защиту. Чтобы мы успешно могли копить информацию с интересующего нас продукта нам нужны несколько айпи-адресов, для обмана системы защиты. Конечно же, многое зависит от того сколько обращений к ресурсу будет составлено.
Никто не обрадуется перспективе быть целью для скрейпинга и ставят на свои продукты разнообразную защиту, но, прокси всё же помогает большинство таких ситуаций обойти.
Для обхода некоторых антифрод-систем эксплуатируется прокси сервер такой же, как и регионально расположенный сервер сайта. К примеру: с болгарского ресурса нужно использовать прокси с привязкой к болгарским айпи.
Какие и сколько прокси нам нужны?
Мы советуем использовать только приватные прокси серверы. Без уверенности в том что ими пользуетесь только вы любой вариант парсинга просто нереалистичен.
Что же до вопроса о количестве необходимых прокси серверов… Каждый веб ресурс имеет свои ограничения на повторные запросы, а каждый скрейпер в зависимости от поставленной задачи тоже имеет определенные цифры по запросам.
В среднем можно выбрать от 300 до 600 запросов в час с одного айпи адреса. Это и есть примерный лимит большинства сайтов. Хорошо, если есть вариант вычислить более точную цифру для этой ситуации, но и среднее арифметическое(450) тут тоже может сгодиться.
А сколько их должно быть?
Точно сказать, сколько использовать прокси для веб-скрейпинга, нельзя. У каждого сайта свои требования, а у каждого парсера в зависимости от задачи будет свое количество запросов.
300-600 запросов в час с одного айпи-адреса – вот примерные лимиты сайтов. Будет хорошо, если отыщете ограничение для ресурсов с помощью тестов. Если у вас нет такой возможности – берите среднее арифметическое: 450 запросов в час с одного IP.
А это законно?
Если боитесь собирать данные с сайтов, не стоит. Парсинг – это законно. Все, что находится в открытом доступе, можно собирать, ведь вся информация уже находится в свободном доступе. Она же не просто так лежит, правда?:)