Не защищайте сайт от скрапинга: сопротивление бесполезно

https://medium.com/@gajus/do-not-protect-your-website-from-scraping-part-1-technology-barriers-b0ced398d16d
  • Перевод
За последнее десятилетие я реализовал много проектов, связанных с агрегацией и анализом контента. Часто агрегация включает в себя снятие данных со сторонних сайтов, то есть скрапинг. Хотя я стараюсь избегать этого термина. Он превратился в некий ярлык, с которым связано много заблуждений. Основное заблуждение в том, что веб-скрапинг можно заблокировать с помощью X, Y, Z.

tl; dr; Нельзя.

С точки зрения бизнеса


На прошлой неделе я встретился с высокопоставленным руководителем из отрасли, в которой развиваю свой бизнес GO2CINEMA. Без сомнения, это один из самых умных и знающих людей в киноиндустрии.

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

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

Да, тщательное исследование. Но всё-таки есть способы, чтобы тебя заблокировать. *ухмыляется*

Нет, парень, нет таких способов.

Реальные пользователи не отличаются от ботов


У людей, далёких от IT, присутствует эдакое идеализированное представление о программировании как в компьютерных играх 80-х — вы надеваете шлем виртуальной реальности и погружаетесь в Сеть. На самом деле вся информация и все взаимодействия — это нули и единицы. Здесь нет ничего человеческого. Нет различия между данными, введёнными компьютером или человеком.


Инспектирование веб-трафика

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

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

Технические контрмеры


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

Блокировка юзер-агента


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

Решение: поддельные заголовки HTTP для имитации реальных пользователей.

Пример: боты GO2CINEMA используют заголовки HTTP, которые имитируют реальные пользовательские сессии (например, в браузере Google Chrome). Заголовки HTTP рандомизируются между сеансами скрапинга.

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

Блокировка IP-адресов


Кинотеатр может попытаться определить и заблокировать IP-адреса ботов GO2CINEMA.

Решение: «поддельные» IP-адреса (использование прокси).


Массовая идентификация

Пример:

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

  1. Рандомизация IP-адресов.
  2. Выделение IP-адресов, которые географически как можно ближе к кинотеатру.
  3. Сохранение выделенного IP-адреса на время сеанса скрапинга.
  4. Пул прокси меняется каждые 24 часа.

Стоит отметить, что в текущей установке есть один недостаток: IP-адреса (прокси) зарегистрированы на различные дата-центры, а не на домашние адреса, как у реальных людей. Теоретически, кинотеатр может получить список подсетей всех дата-центров Великобритании — и заблокировать их. Это успешно заблокирует ботов в текущих настройках. Однако:

  1. Это потребует затрат. Например, такие услуги предоставляют MaxMind (база c IP-адресами анонимайзеров, прокси и VPN, цена не разглашается) и Blocked ($12 000 в год).
  2. Это может привести к блокировке реальных пользователей.

Netflix — пример провайдера, который блокирует IP-адреса известных VPN и прокси.

Если кинотеатры начнут блокировать IP-адреса дата-центров, придётся использовать IP домашних пользователей через прокси домашних адресов вроде Luminati. У такого подхода два недостатка:

  1. Стоимость (наш текущий трафик обойдётся в 1000 фунтов стерлингов в месяц).
  2. Надёжность. Работоспособность и скорость прокси домашних адресов сложно предсказать.

Некоторые кинотеатры уже пытались заблокировать IP-адреса нашего бота. Источник сообщил нам что кинотеатр X думает (или, по крайней мере, думал), что успешно заблокировал наши IP-адреса. Но это не так. Активность бота GO2CINEMA не прекращалась. Похоже, что кинотеатр X заблокировал кого-то другого, кто собирал такие же данные.

Важно подчеркнуть, что теоретически можно различить HTTP-запросы людей и ботов по шаблонам сёрфинга (см. раздел «Невидимая капча»). Но будет очень трудно определить HTTP-запросы именно от ботов GO2CINEMA (по причинам, указанным в разделе «Блокировка юзер-агента»).

Вывод: крайне трудно заблокировать ботов GO2CINEMA по чёрному списку IP-адресов, потому что 1) крайне трудно идентифицировать ботов и 2) у нас есть доступ большому количеству IP-адресов дата-центров и домашних пользователей.

Блокировка по IP не помешает нашим ботам продолжать скрапинг сайтов кинотеатров.

Использование капчи


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

Решение: API для решения капчи.


Полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей (CAPTCHA)

Капча только добавит неудобств обычным пользователям. Все методы капчи (в том числе для reCAPTCHA от Google ) легко обходятся с помощью сторонних сервисов вроде 2Captcha. В этих сервисах реальные люди решают задачи, поставленные перед нашим ботом. Стоимость услуг минимальна (например, 2 фунта за 1000 задач).

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

Невидимая капча


Кинотеатры могут использовать механизмы идентификации и блокировки ботов на основе поведения (так называемую «невидимую капчу»).

Невидимая капча использует комбинацию различных переменных для оценки вероятности того, что взаимодействия конкретного клиента автоматизированы. Нет единого рецепта, как это реализовать. Различные провайдеры используют разные параметры для профилирования пользователей. Эта услуга предоставляется некоторыми CDN (например, Cloudflare) и традиционными провайдерами капчи, как Google reCAPTCHA.

По словам бывшего руководителя отдела Google по распознаванию кликфрода Шумана Гоземаджумдера, эта возможность «создаёт новый тип проблем, которые очень продвинутые боты по-прежнему могут обойти, но порождает гораздо меньше сложностей для реального человека».

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

Проверка электронной почты


Кинотеатр может потребовать проверки электронного письма для выполнения определённых действий, например, для бронирования.

Решение: одноразовые «ящики».


Сейчас я просто добавляю в статью картинки, потому что мне нравится автор — Kidmograph

Пример:

Сейчас кинотеатры уже требуют наличия адреса электронной почты для покупки билета. GO2CINEMA использует доменное имя go2cinema.mail для подтверждения бронирования. Для каждой транзакции создаётся новый адрес электронной почты (например, john1@go2cinema.mail). Письма, отправленные на сгенерированные ящики, недоступны пользователям GO2CINEMA.

Текущий подход имеет преимущества:

  1. Ограничивает возможности кинотеатров отслеживать индивидуальную активность пользователей.
  2. Мешает кинотеатрам рассылать маркетинговые письма нашим пользователям.

Недостаток в том, что кинотеатры могут легко идентифицировать и блокировать транзакции сервиса.

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

  1. Купить оптом тысячи дешевых доменов.
  2. Использовать любую из существующих служб, предоставляющих временные адреса электронной почты (например, Mailinator).
  3. Создавать временные почтовые ящики у существующих крупных провайдеров (Yahoo, Gmail и т. д.).
  4. Выдать реальные адреса пользователей.

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

Мобильная проверка


Кинотеатр может потребовать от пользователя предоставить действительный номер мобильного телефона для завершения транзакции.

Решение: одноразовые мобильные номера.

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

В отличие от временных адресов электронной почты, виртуальный телефонный номер стоит относительно дорого (например, 1 фунт в месяц за номер).

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

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

Будет крайне экстремальным и беспрецедентным случаем, если кинотеатр пойдёт на такое.

Вывод: мобильная верификация не помешает нашим ботам продолжать скрапинг кинотеатров.

Блокирующий BIN


Кинотеатр может заблокировать наш банковский идентификационный номер (BIN).

Решение: подать в суд или выпустить карты в обычном банке (например, Barclays).

Пример:

GO2CINEMA использует для покупки билетов виртуальные дебетовые карты. Для каждого пользователя эмитируется виртуальная карта MasterCard через сервис Entropay. Entropay работает как банк, т. е. все его карты начинаются с BIN 522093. Теоретически, кинотеатр может заблокировать этот BIN.

Но блокировка BIN нарушит договор с платёжным шлюзом. Каждый такой договор включает правило по принятию любых карт. В случае с MasterCard эта политика указана в пункте правил 5.10.1:

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

По той же технической причине кинотеатры не могут заблокировать MoviePass в США:

«Мы полностью соблюдаем правила MasterCard, и AMC подписала соглашения как с их процессинговой компанией, так и с MasterCard. Чтобы заблокировать нас, они по сути должны отказаться от приёма MasterCard». — источник

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

Вывод: блокировка BIN не помешает нашим ботам продолжать скрапинг кинотеатров.

Изменение структуры сайта


Кинотеатр может без предупреждения изменить структуру сайта.

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

Если предположить, что наш скрапер зависит от структуры веб-сайта, то:

  • Изменения структуры сайта происходят редко.
  • Это не сильно отличается от изменений API.
  • Наши системы уведомят, как только это произойдёт.
  • Это повлияет также на реальных пользователей.

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

Защита API с помощью ключа API


Другой бизнесмен (владелец кинотеатра) предположил, что кинотеатр может заблокировать GO2CINEMA, ограничив доступ к API с помощью ключа API.

Он: Кинотеатр может просто обновить свой API, чтобы требовать ключ API.
Я: Какой API?
Он: API для доступа к кинопоказам.
Я: Эта информация опубликована на сайте?
Он: Да.
Я: Тогда клиент браузера должен иметь доступ к этому API для просмотра контента на сайте.

На этом конкретном сайте, который он привёл в качестве примера, ключ API был жёстко прописан в исходном коде.

Вывод: ограничение доступа к API с помощью ключа API не является эффективной стратегией для ограничения скрапинга, если это открытый API.

Резюме


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

Стоит подчеркнуть, что хотя ни один из этих методов не блокирует ботов, внедрение некоторых или всех этих механизмов дорого обойдётся кинотеатру с точки зрения 1) стоимости технической разработки и 2) неудобств для реальных пользователей.

Блокировка 98% скраперов


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

Стоит ли это ваших усилий? Ответ зависит от следующих факторов:

  • Какое влияние оказывают боты скраперов на ваш сайт/бизнес?
  • Повлияет ли это на реальных пользователей?

Чаще всего ответ заключается в том, что оно того не стоит.

Юридические препоны


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

Короткий ответ: нет (или крайне маловероятно, трудно и займёт много лет).

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

Заключительные замечания


Похоже, что многие читатели решили, что мы развязали технологическую войну с кинотеатрами (см. комментарии Reddit). Это не так.

За исключением слухов о попытке кинотеатра X заблокировать наши IP-адреса (упомянутые в разделе «Блокировка IP-адресов»), ни один кинотеатр не пытался нас заблокировать, используя какой-то из перечисленных методов. Цель этой статьи — поделиться кратким описанием сценариев «что, если», подготовленных как резервный план в рамках привлечения венчурного финансирования.

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

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

Ну. И что?
Реклама
Комментарии 206
    0
    Все верно на самом деле. Кроме проблем связанных с защитой сайтов от скраппинга — есть и еще одна проблема: если контент на сайте вкусный, то боты которые используются для скраппинга — будут создавать дополнительную нагрузку. Мне кажется что идеальным решением этого всего было бы — просто забить и предоставлять бесплатное легковесное API для сбора содержимого с сайта.
      +2
      просто забить и предоставлять бесплатное легковесное API

      то, есть, дать возможность любому человеку создать легитимный клон сайта, и смириться с мыслью, что он может стать выше в поисковой выдаче, чем оригинал?
        0
        Если вы предоставляете сверх — уникальный контент — то вариантов тут много: от выпуска своего сайта на CD — дисках, то закрытия вкусной инфы за логином паролем и на платной основе. Любой человек который хочет создать легитимный клон вашего сайта — может это сделать и без скрэппинга — тупым копипастом.
      +6
      Статья звучит из разряда даже не пытайтесь нас блокировать у вас не выйдет. Честно я не знаю зачем вас кому то блокировать, мне только раз доводилось блокировать ботов уж очень большую нагрузку они создавали. Но вместо блокировки я им подпихивал просто левый контент, который не грузил проц на сервере, но заставлял бота лазить по миллионам левых ссылок и не получать нужную ему информацию.
      А так вопрос хватит ли у вас сил заниматься каждым сайтом в отдельности, или проще будет забить на парочку вредных?
        +1

        И гугло-яндекс-боты соответственно понижали вас поисковой выдаче =)

          +6
          Во первых там было совершенно наплевать на выдачу. А во вторых блокировался конкретный бот, который был явно не гугол и не яндекс, и игнорил файл robots.txt Но у него было предсказуемое поведение, и в общем 5-7 дней потыкавшись и накачав всякого хлама он пропал и больше не возвращался.
            0

            1) Думаю что это стоило уточнить, не стоит вести всех ботов под одну гребенку
            2) Нет гарантии что те, кто писали бота просто оптимизировали его таким образом чтобы он мимикрировал под других ботов или пользователей.

            0
            И гугло-яндекс-боты соответственно понижали вас поисковой выдаче =)
            Да с чего бы вдруг? Вообще не вижу никакой связи. У нас был аналогичный и, по моему, единственный случай — набегал бот с User-Agent: WebIndex, создавал большую нагрузку и был заблокирован только из за этого. Остальных ботов это никак не коснулось, пусть сканят на здоровье.
              0

              Такой подход понятен, но вместо того чтобы блокировать более оптимальные пусть и более затратные способы это тротлинг или CDN+cache.


              В первом случае говорим что мол из вашей сети подозрительные запросы — введите капчу
              Во втором не паримся и просто ставим тот же Cloudflare

                0
                более оптимальные
                Понятие оптимальности не является универсальным. В вашем случае это могут быть оптимальные способы, в моём — они совершенно не подходят.
            +1

            А если еще попробовать отдавать зип-бомбы ботам, станет совсем весело..

              –1
              В 21 веке знают, как оценить уровень компрессии архива.
            +4
            Ничего нового. Вся статья умещается в словосочетание «Цена вопроса». Но статья очень полезна, что-бы давать на неё ссылку людям далёким от IT.
              0
              Именно. И автор почему-то обходит стороной вопрос. В спортивных целях взломать можно всё, это гонка вооружений, проблема щита и меча — но вопрос именно в том и состоит, можно ли сделать так, чтобы технически сделать цену скрапинга больше, чем стоимость информации и сам скрапинг стал невыгоден.
              +5
              Расскажите как боты будут обходить изменение структуры разметки данных при каждом обновлении страницы? Сборка в читаемый вид только средствами ксс. Можно бить текстовый контент хоть в середине слова или по 3 буквы. Вообще любую такую защиту можно обойти толпой живых людей, которые сидят и целый день перепечатывают текст. Задача не сделать невозможным, а сделать экономически невыгодным.
                +4
                Навскидку сразу приходит на ум заход бота на сайт браузером, получение картинки страницы и распознавание текста и образов с картинки. Главный вопрос остается — какие выгоды и стоимость такого решения для сайта? Если выгода большая, то и для владельца ботов будет тоже выгодно обойти.
                  +1
                  На самом деле можно проще. Резрешить все CSS-правила и по итогу просто определить, что и где видно, а невидимое выкинуть. На выходе останутся текст, картинки и их расположение без привязки к структуре.
                    +2
                    Главный вопрос остается — какие выгоды и стоимость такого решения для сайта?

                    Особенно порадуются пользователи которые будут видеть, то что предоставит им гугл, яндекс и тд на запрос об этом сайте )))
                      +5
                      Пользователи как раз ничего не увидят, ибо не найдут :-)
                      +1
                      Ок, а как такое решите, сделать весь текст на странице в виде каптчи.
                      0
                      А как же серверный вариант хрома?
                        0
                        Акссессабилити, кэширование и SEO будет на высоте)
                          –2
                          SEO для интерфейса покупки билета? Вы собрались кешировать два килобайта текстовой информации? Аксесабилити тоже не причем, потому что для пользователя все будет так же как и в первый раз — визуально. Для бота все будет по другому.
                          Суть предлагаемого метода как раз в том, чтобы для пользователя все было так же как и всегда, для сердств которыми бот парсит страницу всегда по разному. И такое парсится только если известен алгоритм формирования страницы, или как сказано выше — скриншот и распознавание.
                            +3
                            SEO для интерфейса покупки билета? Вы собрались кешировать два килобайта текстовой информации?
                            На киносеансах свет клином не сошелся. Как насчет фотоблогов, авторских статей и публичных интерфейсов баз данных? Боты бывают как плохие, так и вполне хорошие — поисковые. Как же специальная разметка для виджетов гугла и яндекса?
                            Аксесабилити тоже не причем, потому что для пользователя все будет так же как и в первый раз — визуально
                            Кажется, мы это слово трактуем по-разному. Если юзер пользуется скринридером, ему ваш CSS ни о чем не скажет, будет такая же семантическа каша, как и для бота.
                              0
                              Если юзер пользуется скринридером,
                              Видимо, слабовидящие для кинотеатра не так важны?
                                0
                                Слабовидящие и даже полностью незрячие играют в игрушки, в том числе в GTA и CounterStrike. Уверен, что и в кинотеатры они точно так же ходят.
                                  0
                                  Скринридерами пользуются не только абсолютно слепые.
                                  И еще раз:
                                  На киносеансах свет клином не сошелся.
                            +1
                            Я юзаю Selenium, а вообще если изменения структуры сильные (со сменой css и всего-всего), то это считай новый сайт, и тут ничего нового не придумаешь, кроме как адаптироваться к изменениям, правда обычно адаптация стоит сильно дешевле, чем изменения хозяину
                              0

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

                                0
                                В Beautifulsoup есть обратная рекурсия и ещё много чего, практически всё решается, ну а если совсем край то нейронки в помощ, ну и про Selenium не стоит забывать, Tor-сервера в docker-ах тоже помогает + управление на celery.
                                  0
                                  Я делаю парсинг страниц через Selenium, то есть обычным Chrome браузером. Я могу заставить бота выделять текст мышкой, делать скрин конкретной области для распознавания и т.п. Если все жестко настолько, что пользователь даже не может мышкой скопировать название/информацию о фильме, это явно вызовет миллион проблем с версткой в различных браузерах/системах, и боты будут наименьшей проблемой.
                                    0
                                    Очень интересно. Какая у Вас производительность (url в секунду)? На какой по ресурсам машине работает?
                                      0
                                      Работает на VDS 2 гб RAM/CPU 2x2.2ГГц (потенциально Xeon) около 2-3 секунд на страницу в один поток (зависит от скорости канала больше чем от производительности системы). Можно отключить загрузку js/css, если это не задевает контент, тогда можно делать и 3-5 потоков, но в моем случае важно еще делать скрины (как оно на самом деле) и скорость важна в меньшей степени.
                                  +5
                                  А как насчет shadow-бана? Все описанные методы предполагают активные действия кинотеатров на присутствие ботов. А что, если боты и их создатели не будут видеть активного сопротивления и при этом получаемый контент будет «белым шумом» или не релевантным?
                                    +1

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

                                      0
                                      скраппинг делается не ради фана, кто-то получает контент и анализирует, если будет что-то левое, менеджер это заметит и скажет разработчику о проблеме
                                        +1
                                        А затем, если это выяснится, то будет претензия: почему клиент (который по факту бот, но это не имеет значения) купил билет, а он по факту не существует. Shadow ban можно применить только там, где нет оплаты товаров.
                                          0
                                          Разве боты покупают товары, услуги?
                                            0
                                            На сайте-агрегаторе купят. Первый абзац статьи. Так что если скормить такому сайту ложную информацию, то остается два выхода: либо рассказать ему, что такого билета нет и не было, либо продать несуществующий билет. Что не выбери, кинотеатр проигрывает. «Проигрывает», ха. Ему в любом случае ведь заплатят деньги.
                                            Вообще не могу понять этого: кинотеатру бесплатно предоставляют покупателей, а он пытается заблокировать деятельность агрегатора.
                                          –8
                                          Написать весь фронт на реактивном фреймворке и не выдавать данные в DOM через рендер и удачи вашему боту еще можно в JS генерировать хэш ключ который будет сохранятся в header и отправляться на сервер, если данного ключа нет, то страница тупо даже не сгенирируется. Возможно есть обход подобной манипулации против ботов, но как минимум от большинства ботов это будет хороши решением.
                                            +5
                                            Selenium WebDriver + PhantomJS решают эту проблему из коробки.
                                              –3
                                              PhantomJS труп
                                                0
                                                SlimerJS – превосходная замена.
                                                  0
                                                  PhantomJS отвалился потому что хром теперь нативно умеет в headless. Зачем продолжать сидеть на костылях?
                                                    –1
                                                    PhantomJS отвалился потому что хром теперь нативно умеет...

                                                    Л — логика.
                                                      0
                                                      Т.е то что PhantomJS это по сути и есть headless chrome вас не смущает?
                                                        +1
                                                        Первое правило инженера: «Работает — не трогай.»

                                                        Аргумент: «круче, потому что новый» — это несерьезно.
                                                      0

                                                      А headless chrome умеет все то, что умеет PhantomJS? Насколько я знаю — пока не умеет.


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


                                                      А уж про то, насколько удобна связка CasperJS + SlimerJS я и не говорю.

                                                        0
                                                        а что он не умеет?
                                                          0
                                                          Все PhantomJS API он не умеет.
                                                    0

                                                    Не потому что сама технология плоха, а только потому что есть нативный Chrome Headless.

                                                      0
                                                      Актуальные версии phantomjs практически не отличаются от браузера. Я юзаю его для prerender. Сейчас можно заменить на chrome. Я попробовал но пока отказался т.к. работает заметно медленнее
                                                        0

                                                        Возможно, я предпочитаю Google Headless, т.к. через какое-то время разработка фантома прекратится.

                                                0
                                                Phantom на страницу заходит выполняет джаваскрипт вроде return $scope (или любой другой источник данных) и получает все на блюдечке даже парсить не надо ничего.
                                                  –3
                                                  PhantomJS труп
                                                  0
                                                  смешно
                                                  –19

                                                  Очень аргументированная статья. Прямо руки опускаются. Но вот вопрос.
                                                  Сможет ли квалификация автора преодолеть наше изобретение
                                                  СПОСОБ ИНТЕРАКТИВНОГО ТЕЛЕВИДЕНИЯ, ИСПОЛЬЗУЮЩИЙ ФОВЕАЦИОННЫЕ СВОЙСТВА ГЛАЗ ИНДИВИДУАЛЬНЫХ И ГРУППОВЫХ ПОЛЬЗОВАТЕЛЕЙ И ЗАЩИЩАЮЩИЙ ВИДЕОИНФОРМАЦИЮ ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА, РАСПРОСТРАНЕНИЯ И ИСПОЛЬЗОВАНИЯ
                                                  Зарегистрированный в США. Патент 7950029


                                                  https://patents.google.com/patent/US7950029


                                                  и в России патент 2220514


                                                  http://www1.fips.ru/fips_servl/fips_servlet?DB=RUPAT&rn=1189&DocNumber=2220514&TypeFile=html


                                                  Может пора перейти на сторону защиты контента.

                                                    +4
                                                    А надо ли обходить?

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

                                                    Но вы защищайте, никто не против.
                                                      +1
                                                      Эм… вы предлагаете пользователям для покупки билетов в кинотеатр у себя веб-камеру включать? А содержимое сайта транслировать как видео-поток? :)
                                                        0

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


                                                        Дальше чем определить блокировать/не блокировать Пк или еще чего-то такое не взлетит.

                                                          0
                                                          Один смотрит с устройством, все остальные без.

                                                          Один смотрит с удовольствием, все остальные в комнате без.
                                                          Дополнительное оборудование — EYETRACKER уже кажется взлетело.
                                                          Немного присело до 100 долл. США за штуку, но сейчас временно поднялось до 300 долл.США за штуку.

                                                        0
                                                        А как Вы обходите защиту от ботов в стиле habrahabr.ru/post/139931?
                                                        Конечно можно запускать hedaless chrome но это же крайне медленно и затратно по ресурсам?
                                                          +1
                                                          Сорри не заметил что это перевод. Все слишком по-нашему сделано.
                                                            0
                                                            Ага, особенно — фунты стерлингов, упоминаемые неоднократно )
                                                            +1
                                                            Посыл статьи в том, что совершенствование защиты от скраперов на порядок дороже, чем совершенствование самого бота.

                                                            Если мы говорим об умных ботах, то брать headless chrome — это вообще самый разумный шаг. Это несложно (ставишь puppeteer и вперёд) и такого бота очень сложно отличить от реального пользователя chrome даже через Javascript, а со стороны веб-сервера тем более. То, что скорость и затраты RAM намного хуже, чем у тупых парсеров DOM — это приемлимые издержки.
                                                              0
                                                              Такого бота можно легко определить по обильному трафику.
                                                              В скрипт можно добавить медленную утечку памяти и какое нибудь тяжелое вычисление, которое будет грузить процессор, например майним крипту, если юзер превысит порог активности. Если вы бот который использует селениум и аналоги, то определить вас уже можно на клиентской стороне, по линкам вы ходите, а мышкой не двигате и прям на клиенте можно начать водить вас за нос.
                                                              Но будущее защиты от ботов, которое не за горами, за машинным обучением и тогда перевес будет на стороне защищающихся. МО отлично подходит для выявления паттернов поведения, но совсем не подходит для поиска новых путей обхода защиты.
                                                                +2
                                                                Вот желаю вам самому активно пользоваться сайтом, который вам будет майнить крипту или тормозить систему после третьей открытой вкладки. МО тоже не панацея, у него будут ложные попадания. Страдать будут, например, подозрительные пользователи Adblock.
                                                                  0
                                                                  >Вот желаю вам самому активно пользоваться сайтом…
                                                                  Только «если юзер превысит порог активности»
                                                                  >МО тоже не панацея
                                                                  Не панацея, но МО удешевит защиту и увеличит цену взлома.
                                                                  +2
                                                                  Селениум позволяет имитировать перемещение курсора, если надо. Просто будет сделан еще один виток борьбы брони и снаряда.
                                                                  Паттерны поведения также будут сымитированы.
                                                                  Боюсь, даже отдача контента только подтвердившим свою учетку на госуслугах (и фига всем остальным) не спасет :-)
                                                                    0
                                                                    «Просто будет сделан еще один виток борьбы брони и снаряда. „
                                                                    Да. И можно навскидку еще несколько витков накрутить. Поэтому “сопротивление бесполезно», это открытый вопрос. И победит не тот, кто взламывает и не тот, кто защищает, а тот настырней.
                                                                      0
                                                                      И победит не тот, кто взламывает и не тот, кто защищает, а тот настырней.
                                                                      Зависит от определения победы.
                                                                    0
                                                                    Превышения порога активности не будет если использовать прокси. Про отсутствие движения мыши вы так всех слепых пользователей забаните тоже.
                                                                +5
                                                                Заблокировать нельзя, но можно увеличить цену сканирования до того момента, когда это станет не рентабельным.
                                                                  0
                                                                  Еще ботов можно выявлять и банить по их поведению на сайте, если подстраивать под паттерн человека — сбор данных будет очень медленный. А вообще, конечно, нет смысла в защитах — если надо все равно утащат, уж лучше, правда, отдельное API для них сделать (может даже за маленькую денюжку, зато с гарантированным интерфейсом), чтобы хоть сайт не валили.
                                                                    0
                                                                    если подстраивать под паттерн человека — сбор данных будет очень медленный

                                                                    Или очень распараллеленный
                                                                    +1

                                                                    Хм. Не ставьте замки на двери вашей квартиры, домушник всё-равно вскроет любой.

                                                                      0
                                                                      Неверная аналогия. Аналог квартиры с замком на двери — приватный сайт, доступный ограниченному кругу лиц. А в статье рассматривается сайт для неограниченного круга лиц…
                                                                        +1

                                                                        По-моему, вполне верная, но если вам так угодно, — не ставьте замки на двери музея с Джокондой, воры всё-равно вскроют любой…

                                                                      0
                                                                      Этда, аналогия некоррекна. Корректной будет: не ставьте двух ментов около скамейки в парке, просто сделайте ее попрочнее, но без фанатизма. Скамейку с ментами не своруют и не поломают, зато под ментовским надзором и целующихся парочек (ради которых, собственно, все эти архитектурные фурнитуры и инсталлируются) в живописном уголке парка не будет.
                                                                        –3
                                                                        Полиция и законы в принципе не нужны, потому что преступления все равно будут происходить.
                                                                        И, неожиданно, какие-то законы действительно мешают жить обычным людям.
                                                                      0
                                                                      Касаемо юридической стороны, в США дошедшие до суда прецеденты скрапинга чаще разрешались в пользу истца (т.е. владельца сайта). Там невозможно скрапить facebook например. Что-то в этом кажется мне противоречивым — ведь данные открыты для любого юзера сети, т.е. через мой браузер я легко могу эти данные получить. Что изменится, если я буду использовать скрипт, который ровно как и браузер скопирует эти данные в RAM моего компьютера.
                                                                        +1
                                                                        Коммерческая выгода? (конкуренция с «жертвой» и тому подобное)
                                                                        Сдается мне, что здесь определяющим фактором является мотивация, а не инструмент.
                                                                          0
                                                                          А почему это не может быть честной конкуренцией?
                                                                            +1
                                                                            Переманивание юзеров тыренным контентом? Ну так себе.
                                                                              0
                                                                              Мне видится разница между тырить авторский контент (статьи, видео, аудио) и просто список событий где/когда/стоимость. Авиасейлс вам в пример.
                                                                              Более того, не всегда скрапинг осуществляется ради копипаста. Бывает «тыренный» контент проходит обработку и уже полученные данные (например статистич. метрики) располагаются на сайте скрапера. Вы тоже это расцените как «тырить контент»? А гугл/яндекс получается тоже контент тырят?
                                                                                +1
                                                                                Мне видится разница между тырить авторский контент (статьи, видео, аудио) и просто список событий где/когда/стоимость.
                                                                                Элементарно аудитория скорее предпочтет пользоваться агрегатором, чем ползать по десятку сайтов. То есть такой копипастинг напрямую наносит ущерб сайтам-источникам.

                                                                                Бывает «тыренный» контент проходит обработку и уже полученные данные (например статистич. метрики) располагаются на сайте скрапера.
                                                                                То есть уже не копипастинг, а самодельный контент по мотивам, да еще наверняка со ссылкой на оригинал. Тут вряд ли есть конкуренция, а возможно даже наоборот — партнерство и PR.
                                                                                Но подобным разделением мух от котлет как раз и занимаются суды.
                                                                                  0
                                                                                  Ок. Ваша мысль ясна. А что насчет сбора данных из фейсбука, допустим на предмет упоминания каких-то ключевых слов, как это делают сервисы youscan, iqbuzz, крибрум и тд? Это нарушает чьи-то права?
                                                                                    0
                                                                                    Как-то тут часто упоминают фейсбук) Не встречал еще проекты, которые с помощью скрапинга пытались бы конкурировать с крупными социальными сетями в их бизнесе. Если такой цели не стоит, то о конкуренции вроде как речи не идет.
                                                                                    Но тут тонкие моменты насчет персональных данных (например, сбор данных с закрытых для роботов профилей), так что не буду ручаться. Нужно читать их договора о приватности.
                                                                                      –1
                                                                                      Ну фейсбук упоминается в свете всё еще неутихающего скандала.
                                                                                      Ну в этом случае на наличии конкуренции с фб я внимание не заостряю — тут ее похоже нет. А вот касаемо договора о приватности в фб — интересует насколько он что-то решает при условии, что его контент виден без регистрации.
                                                                                        0
                                                                                        То, что видно — не означает, что это можно собирать автоматизированно и использовать для коммерческой выгоды.
                                                                        0
                                                                        Сайты, сделанные на Adobe Flash или MS Silverlight, наверняка добавляли головной боли разработчикам ботов. Но это уже в прошлом.
                                                                          0
                                                                          могу ошибаться, но в будущем ведь WebAssembly придет. Или там все равно html останется?
                                                                            0
                                                                            WebAssembly будем дезассемблировать=))
                                                                              0
                                                                              WebAssembly все равно будет преобразован в человеко-читаемый формат…
                                                                                0
                                                                                WebAssembly + средства запутывания кода уровня VMProtect'а + отрисовка на Canvas (также как это OnlyOffice делает, им это позволяет шикарный веб-редактор документов сделать, намного лучше всех других) или вообще через WebGL.
                                                                                Правда поисковики тоже не найдут и все равно можно парсить — пусть и придется OCR прикручивать.
                                                                                  0
                                                                                  Упоминая такие технологии все забывают что какая бы технология для рендеринга данных не использовалась — это только рендер — данные в любом случае приезжают от сервера в формате который можно преобразовать в текстовый и отпарсить. Всё зависит только от суммы в $ которую придётся потратить на преобразование данных.
                                                                                    0
                                                                                    Кто может и забывает но не я. Есть опыт по парсингу в том числе например целлюлозы. Да, проблема решается. Но надо писать специальный скрипт для Selenium а потом несколько часов заниматься сексом с FineReader'ом чтобы из картинок получить нормальный читабельный текст (целлюлоза не то что картинки использует — они (для некоторых книг) еще и шум любят добавлять туда(!)).
                                                                                      0
                                                                                      Всякие pdf и картинки лучше всего парсить с помощью машин лёрнинга, но натренировать сеть конечно очень непросто, ну и вообще это довольно сложная задача.
                                                                                      0
                                                                                      Всё зависит только от суммы в $ которую придётся потратить на преобразование данных.

                                                                                      Еще вопрос в SLA. Скажем, есть бизнес, полностью завязанный на парсинг некого портала, а точнее его бинарного протокола. И вдруг этот портал выкатывает новую версию бинарного протокола. Даже, если $ не проблема в принципе, то сколько потребуется дней, чтобы восстановить работоспособность? А ведь это простой бизнеса. И к затратам на парсинг добавляем затраты на простой и репутационные потери.
                                                                                        +1
                                                                                        Очень странный такой бизнес, где стоит сложная система — которая зависит от одного ненадёжного источника. Наверное в таком случае нужно иметь возможность парсить как и сырые данные так и отрендеренную страницу. Вообще такое часто случается что разработчики сайтов внезапно меняют разметку и парсер нужно допиливать под реалии. У нас есть клиент у которого скрапятся 200+ магазинов, и вот раз в месяц 20%+ меняют селекторы или js библиотеки(которые меняют селекторы на страницах) и это приходится фиксить. Причем изменения могут быть минимальны, и создается впечатление что они это делают от того что им нечем занятся.
                                                                                          –1

                                                                                          Никогда не ходите в море с двумя хронометрами. Берите один или три ;-)

                                                                                            0
                                                                                            У нас есть клиент у которого скрапятся 200+ магазинов, и вот раз в месяц 20%+ меняют селекторы или js библиотеки(которые меняют селекторы на страницах)

                                                                                            Отличная статистика. Ко мне иногда обращаются с задачами по парсингу. При этом мои опасения воспринимаются примерно так: больной все время рвется проверять валидность верстки, какие-то измененные селекторы. При их этом аргумент что такое может произойти ну раз в год на пару сайтов. Я не против парсинга как такового. Но если заказчик адекватно понимает что это не один раз заплатил за черный ящик, а постоянная работа (не доработка и исправление «ваших багов») плюс для прайс-агрегаторов еще штат операторов которые будут сверять номенклатуру, заводить описания товаров (если это прайс-агрегатор на те же 200 магазинов).
                                                                                              0
                                                                                              По-моему если клиент сознательно выбирает плохой вариант, приводящий к дополнительным заказам (и оплате) вам в будущем, уговаривать его такое не делать незачем. Предупредить — да, если разумный человек то поймёт и согласится, а если нет — пусть платит как хотел.
                                                                                                0
                                                                                                Я смотрю на вещи осторожно. Я примерно предполагаю что через пару месяцев клиент будет доставать звонками «ваш парсинг отвалился» и соответственно просьбами-требованиями устранить баг немедленно и бесплатно.
                                                                                                  0
                                                                                                  Для таких клиентов у нас есть решения по подписке, что то типо платишь подписку за скрапер раз в месяц и не заморачиваешься с тем что надо кому то звонить\писать что бы это пофиксили(так как мы сами следим за скраперами), но цена на такое дело начинается от $30 и не каждый на это решается. Ну а вообще конечно до клиента лучше сразу донести то что любые изменения после принятия работы стоят денег, даже если это «5 минут делов».
                                                                                        0
                                                                                        Правда поисковики тоже не найдут

                                                                                        Я думаю, тему, как с SPA будут делать. 1 сайт для людей на WebGL, и параллельная структура на чистом html для поисковых ботов. Но, снова таки, если идет речь о сильно динамическом контенте (букмекеры со ставками во время матча, онлайн-аукционы, магазины с часто меняющимися ценами), то скорее всего притворение гугл-ботом (что тоже нетривиально в случае вайтлистинга) поможет получить информацию не первой свежести. Так, как сайтец для поисковых ботов будет лежать в кеше со временем инвалидации.
                                                                                  –1
                                                                                  По поводу технических мер — в целом верно, но как раз поэтому это должно перейти в правовую плоскость. Возможно, и сейчас хватает законов для этого, а если нет то они должны, очевидно, появиться. Непонятно это бахвальство автора статьи о том, что он «всё равно украдёт данные» — по сути он хвастается теми аморальными шагами, которые он готов предпринять для развития своего бизнеса.
                                                                                    +2
                                                                                    А что здесь аморального? Серьезно, я хотел бы увидеть этот критерий.
                                                                                      0
                                                                                      Кража контента, очевидно.
                                                                                        0
                                                                                        А что он крадет? Авторские статьи? Нет. Он собирает список фактов фильм/время/место/стоимость. Думаю разница существенна. Когда контент — статья, то копипаст — кража, а в случае пересказа фактов — всё чисто. В случае go2cinema это именно перечисление фактов событий. Что бы яснее было: Допустим Медуза написала статью о каком-то событии в мировой политике (например в Кракожии 1 апреля выборы будут). А я опираясь на эту статью пишу у себя на сайте/твитере о факте события (предстоящего). В этом случае даже ссылка на источник не нужна.
                                                                                          0
                                                                                          У меня есть вопросы к постановке вопросов)
                                                                                          Что является контентом сайта с расписаниями?
                                                                                          Помогает ли чужой контент пользователям не заходить на оригинальный сайт?
                                                                                            0
                                                                                            Контент сайта с расписанием: какой фильм — какой кинотеатр — в какое время — цена билета.
                                                                                            Не могу считать скрапинг такого контента кражой. Это освещение фактов, что в таком-то кинотеатре в такое-то время пройдет показ фильма. Никаких рецензий и отзывов там не будет (ну или будут цитаты из рецензий с ссылкой на источник).

                                                                                            «Помогает ли чужой контент пользователям не заходить на оригинальный сайт?»
                                                                                            А это уже имхо не важно, кражи контента у сайта не происходит.
                                                                                              0
                                                                                              А это уже имхо не важно, кражи контента у сайта не происходит.
                                                                                              Ущерб для сайта вполне очевидный: если нет юзеров, то они не смотрят рекламу, т.е. не приносят доход от партнеров и/или не привязываются к конкретному заведению (реклама премьеры).
                                                                                                0
                                                                                                если нет юзеров, то они не смотрят рекламу


                                                                                                Кинотеатр зарабатывает деньги рекламой на своем сайте… Плохи дела.

                                                                                                не привязываются к конкретному заведению


                                                                                                Билеты в кинотеатр «Красная звезда» действительны только в этом кинотеатре. Какая еще привязка нужна?
                                                                                                  0
                                                                                                  Кинотеатр зарабатывает деньги рекламой на своем сайте… Плохи дела.

                                                                                                  Почему бы и нет?) Например, кинотеатр в БЦ. Почему бы не порекламировать сервисы в двух шагах?

                                                                                                  Какая еще привязка нужна?
                                                                                                  Чтобы вы в эту «Красную звезду» пришли через месяц снова пришли на премьеру чего-то интересного. Зайдите на сайт любого кинотеатра, там куча всякой ерунды, типа конкурсов, мероприятий и конечно же инстаграм организации (=
                                                                                                  0
                                                                                                  То что скрапингом автор уводит юзеров у сайта — не критерий наличия нарушений, имхо. Критерием имхо должна быть совокупность двух факторов: что это за данные и как именно эти данные используются после скрапинга. Если это просто перечень событий, а не авторская статья, то всё чисто — можно показывать у себя на сайте. Если это авторская статья, то копипастить ее нельзя. Однако можно выкладывать статистику по этой статье (категория, теги, кол-во слов, орф. ошибок, комментариев, прочтений если счетчик есть, соотношение тональности комментариев). НО это мое видение относительно понятия «аморальных шагов», с которого и началась эта ветка, а не относительно законов той или иной юрисдикции.
                                                                                                    0
                                                                                                    Критерием имхо должна быть совокупность двух факторов: что это за данные и как именно эти данные используются после скрапинга.

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

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

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

                                                                                                      Вообще, если говорит о РФ, авторское право не защищает факты, новости и т.п., то есть газета не может написать пользовательское сообщение, что ты не имеешь права перепечатывать или распостранять новости, которые прочитаешь в газете. Поэтому далеко не всякое пользовательское сообщение законно (про мораль все тоже сложно, если пользователям экономят часы, чтобы найти информацию, при этом все равно они купят у того же продовца — сложно судить морально это или нет создание таких агрегаторов, так и гугл с яндексам кто-то из продовцов хотел бы запретить).
                                                                                                        0
                                                                                                        Я в этом комменте писал немного про другое. Не про защиту конкретного содержимого, а про право владельца сайта определять политику доступа к нему. Вы же не будете отрицать, что платные подписки законны, пусть там внутри будут и только новости, которые можно перепечатывать? Обход механизма подписки юридически карается или нет? Вот запрет ботов — из той же категории — для просмотра сайта требуется быть, условно говоря, живым человеком с обычным браузером. Ну а получили законный доступ, прочитали — можете перепечатывать (если закон разрешает), но вручную, тратя своё рабочее время.
                                                                                                          0
                                                                                                          Обход механизма подписки юридически карается или нет?

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

                                                                                                          Ну а получили законный доступ, прочитали — можете перепечатывать (если закон разрешает), но вручную, тратя своё рабочее время.

                                                                                                          Эээ, а в каком законе какой страны сказано вручную? Если у меня есть право скопировать содержимое сайта, кто юридически помешает мне сделать сохранить страницу как? Или ctrl-c, ctrl-v? Дайте ссылку на такой закон?
                                                                                                            0
                                                                                                            Обратите внимание, в оригинале статья имеет дополнение к названию в скобках (часть 1, технические барьеры). Надо полагать что следом за техническими барьерами будут часть вторая — правовые барьеры. То что не будучи специалистом в области права и + к этому который специализируется на авторском праве и + к этому на авторском праве в цифровых технологиях — сделать аргументированный разбор полетов не получится — это например для меня вполне понятно. Поэтому я перевел бы эту тему совсем в другое русло. Насколько парсинг сайтов является что ли прогрессивным явлением, полезным.

                                                                                                            Интересно как бы отнесся автор статьи и одновременно владелец бота к тому что его статью так же кто-то ботнул, См. ravikash.com/do-not-protect-your-website-from-scraping-part-1-technology-barriers

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

                                                                                                            Эта статья там вообще не в теме. Я подумал как она могла попасть на этот сайт. Мое подозрение такое, что часто употребляемое автором слово Blocking бот попутал со словом Blokchain. А поскольку этот сайт вряд ли читают даже его владельцы статья не по теме там зависла навечно.

                                                                                                            Что касается правовой части то могу предположить что не так уж много будет случаев доведения дел до суда — как иначе закон подействует? Т.к. в результате может быть установлено что и у исходного варианта сайта не так уж много прав на этот контент. Поэтому вопрос все тот же — в цене.

                                                                                                            Спасибо автору статьи он показал какую инфраструктуру необходимо задействовать чтобы гарантировать постоянную доступность ботов (это сотни или там тысячи ip адресов из пула) плюс вместо сервера с 1Гб памяти и одним процессором для запуска простого бота на скажем php или python нужно будет приобретать ресурсов на 1000$ в месяц чтобы запускать там «безголовые» браузеры.

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

                                                                                                              А я не про "дать почитать" говорил. А, например, газету не выписывать, но стащил у почтальона из сумки, прочитал, положил назад. В случае с цифровым вариантом — взломал сайт газеты, прочёл из базы. Мне кажется, оба случая явно незаконны.


                                                                                                              сохранить страницу как? Или ctrl-c, ctrl-v?

                                                                                                              Это тоже можно приписать к "вручную". Граница несколько размыта, да (и так везде, не только в ИТ), но при желании её можно уточнять.

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

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

                                                                                                                Это тоже можно приписать к «вручную». Граница несколько размыта, да (и так везде, не только в ИТ), но при желании её можно уточнять

                                                                                                                Можно, но это уточнять должны не правила сайта, а законы страны. Скажем, запретить записывать видео с программы ТВ на видеомагнитафон просто пользовательским соглашением телеканала нельзя (точнее это будет юридически ничтожно). Все будет зависит от законов и того что вы копируете. И редко где в законах проводят границу по инструменту для копирования (может я программой для себя самого, чтобы почитать оффлайн, сайт копирую? Есть и такие программы, нельзя просто пользовательским соглашениям в общем случае определять как пользователь имеет право просматривать ваш сайт).
                                                                                                                  0
                                                                                                                  Взял в магазине газету и пока продавец не видит прочитал — юридически наказуемо? Сомневаюсь.
                                                                                                                  Или же достал фотоаппарат и начал методично копировать информацию из недешевого издания, лист за листом?

                                                                                                                  В случае взлома сайта газеты, это уже аналог взломал офис издательства, чтобы прочитать газету, накажут не за то что прочитал, а за то что взломал.
                                                                                                                  В УК как раз пишут про неправомерный доступ к охраняемой информации, а не про сам взлом.
                                                                                                                0
                                                                                                                Нет всегда. И не все ограничения доступа законы, например в РФ нельзя запретить дать приятелю прочитать выписанную газету.

                                                                                                                Некорректный пример. В оригинале — коммерческое использование. Причём даже очень натянуто "коммерческое". Например, радио заплатило за трансляцию музыки, а парикмахерская заплатила за проводную радиоточку. Но если они включат музыку из радио в присутствии посетителей (например, из РАО), то огребут проблем и штрафов.

                                                                                                                  0
                                                                                                                  Учитывая, что парикмахерская делает коммерцию совсем не на ретрансляции радио… Это надо быть ооочень зубастым юристом, чтобы натянуть сюда коммерческое использование. Пруфы проблем и штрафов есть?
                                                                                                            0
                                                                                                            Можно узнать когда оно было мной подписано? Публичная оферта? А меня о ней хотябы известили? Как быть если сайт (и его владельцы) ЗНАЕТ или обязан был знать что я не могу ее понять (пример — Pocketbook'овское облако — оферта на немецком языке, при этом сайт на русском, при этом вопрос как сие понимать — публично задавался им в посте про это самое облако на GT).
                                                                                                            И кстати как быть если сайт В КУРСЕ что оферта не принята (например мой браузер отправляет HTTP-заголовок где прямо сказано что оферту — не принимаю, буду вести себя так то и так то, если не устраивает — отвечайте стандартным статус-кодом из диапазона 400...499, ну да это ни в одном стандарте не описано — ну так где мне на сайте оферту искать тоже ни в одном стандарте не описано). Почему то считается что сайт может отдать данные в каком попало формате и считать что пользователь — прочитал и понял а обратное — неверно. А собственно с чего вдруг?
                                                                                                              0
                                                                                                              Если вы злонамеренно используете средства обхода защиты от парсинга — то вы не можете быть не в курсе, что владелец против.
                                                                                            +3
                                                                                            Защититься на 100% трудновато, но этим не обязательно заниматься в лоб. Да, часть отобьется через отсечку диапазонов ДЦ и известных VPN сервисов, часть через анализ поведения. Ну а части скормят такую мякину, что сервис-аггрегатор по факту введёт юзеров в заблуждение, и будут отвечать перед ними.

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

                                                                                              0
                                                                                              и известных VPN сервисов
                                                                                              Многие сервисы этим злоупотребляют и обычные юзеры с VPN негодуют.
                                                                                                0
                                                                                                Полностью согласен. Вопрос как обычно в том, что сервисы, имеющие данные, не хотят делать удобнее, лучше, понятнее людям (пример — те же кинотеатры из поста просят у юзеров мыло, и рассылаю на него спам, когда юзер всего-то хотел купить билет; это минимум дурной тон, но кинотеатры делают допущение, что «куда они денутся»). Сервис сбора данных подает их в лучшем, более понятном виде (еще, наверное, и цены сравнивает, давая возможность выбрать поудобнее сеанс и подешевле билет), и это удобно. Сделали бы владельцы контента удобно людям, а не себе — сторонним сервисам бы не было бы места для жизни.

                                                                                                Сделать можно и по другому: текст для просмотра разложить на несколько картинок так, чтобы часть точке на кажой была прозрачной, и только если наложить через css одну на другую, получались бы слова. Сделай так — и будет большой гемор это собрать, тебя просто проигнорируют. Но тут возникает мыслишка «ой, нас же гугл не проиндексирует!»

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

                                                                                                А скраперы создают же проблемы не только сайтам, если уж по теме поста: тем же VPN тоже придется защищаться.
                                                                                                  0
                                                                                                  Но тут возникает мыслишка «ой, нас же гугл не проиндексирует!»

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

                                                                                              +1
                                                                                              В борьбе меча и щита побеждает кошелек.
                                                                                                +1
                                                                                                Особенно бесят сайты, которые так трясутся над своим бесценным контентом, что даже выделение и/или копирование текста запрещают. Или при копировании добавляют в буфер кроме выделенного текста еще и всякий мусор типа своего адреса. На что вообще рассчет? Что юзер не глядя вставит этот бред в поле ввода и запостит куда-то в неизменном виде?

                                                                                                Когда занимался предоставлением коммерческих интернет-площадок далеким от ИТ людям, чуть не каждый день прилетал ворос типа «как запретить копирование текста/картинок с моего сайта». И какое было расстройство, когда оказывалось, что никак. Некоторые даже делали полностью флешовый сайт, жертвуя доступностью в поисковиках, лишь бы чуть-чуть усложнить копировние того, что никому особо и не нужно.
                                                                                                  0
                                                                                                  Защита от серьезных парсеров дело сложное. Тот кто тырит контент (то есть не хочет платить за контент или не хочет платить хотя бы элементарно людям которые будут вводить в базу данных технические характеристики товаров и т.п.) — не будет слишком много платить и за парсеры разработчику. Я например пока что отказываюсь когда мне предлагают сделать парсер на продажу. Т.к. прекрасно понимаю что тот заказчик который хочет тырить контент за свои скромные деньги поимеет всех и вся и потом когда сайт изменит структуру или забанит — то будет пытаться заставить работать бесплатно и это уже будет пожизненно.

                                                                                                  Но против такого дешевого парсинга и защиту поставить довольно просто. Ссылку я дал выше на то как это сделать (статья на Хабре (не моя))
                                                                                                  0
                                                                                                  Челендж от Cloudflare,у нас например, решается в автоматическом режиме. Но есть провайдеры обход защиты которых действительно сложный. К примеру Distil Networks. В целом я согласен с автором по поводу того, что лучшая защита нервов и машинного времени это публичное API. Что касается юридической стороны то автоматический сбор данных которые доступны без аутентификации — вообще не должен быть наказуем, т.к они публично доступны. Другое дело их использование.
                                                                                                    +3
                                                                                                    Не до конца понятен вчем профит борьбы в целом. Ситуация с скрапингом в большенстве напоминает сценарий работы с гос организациями в постсоветском пространстве:
                                                                                                    — Мы сделали красивый интерфейс для доступа к вашим данным. Пользователи могут покупать билеты через нас
                                                                                                    — Мы вам данные не разрешали брать
                                                                                                    — Да, но у вас они и так не покупали. Мы вам помогаем зарабатывать
                                                                                                    — Пускай покупают с нашего сайта. А не хотят — не надо. Мы вам данные не давали
                                                                                                    По мотивам 42.tut.by/437580
                                                                                                      0
                                                                                                      Не буду говорить что есть сайты где сам контент является ценностью — таких наверное немного.
                                                                                                      Я могу привести по крайней мере две причины.
                                                                                                      1) Одинаковый контент сильно понижает рейтинг у поисковых систем. Если например оригинал поисковик не успел проиндексировать а я уже благодаря парсингу успел за пару секунд опубликовать у себя копию то дальше поисковик скорее всего «назначит» оригиналом тот текст который проиндексирует первым.
                                                                                                      2) Для улучшения продажи нужны подробные описания, точные характеристики и изображения товаров. Я уже не говорю о там каком-то авторском тексте уникального содержания. Тот кто подключился к сайту с хорошей базой по описаниям товарам получает практически даром и может стать конкурентом, т.к. его интернет-магазин будет выглядеть уже солидно.
                                                                                                        0
                                                                                                        Мой вопрос (риторический) был про конкретный кейс — продажа билетов в конкретном кинотеатре на конкретный сеанс. Какая разница купит человек на родном сайте кинотеатра или у агрегатора…
                                                                                                          0
                                                                                                          Для собственника кинотеатра — никакой. Для собственника сайта который не обязательно является собственника кинотеатра — это потеря прибыли.

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

                                                                                                          В большинстве случаев парсинг который покупают для себя хитрые заказчики задешево может быть не сильно сложными средствами отсеян. И если собственник сайта считает что его контент должен быть защищен он имеет на это полное право. И не только право. Для того чтобы отсеять 99% реально работающих на curl/node-request парсеров достаточно простого вычислителя ботов как в статье на Хабре на которую я привел ссылку.
                                                                                                      0
                                                                                                      кинотеатрам можно тоже использовать скрапинг, только в своих целях.

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

                                                                                                          Там же электронный билет, со штрих кодом, верно? Просто послать через некоторое время на указанный при регистрации e-mail сообщение: Извините, ваш билет аннулирован, вот новый. Интересно, как аггрегатор будет пересылать новый билет покупателю, если он не собирает e-mail :-) Ну и в правилах продажи: кинотеатр не отвечает за проблемы, возникающие при приобретении бидлетов не на официальном сайте кинотеатра.
                                                                                                          А зрителю вежливо объяснить, что мол раз он покупал билет через аггрегатор, пусть к тому и обращается за возвратом денег. А еще дать буклет с рекламой своего сайта и подарить клубную карточку со скидкой. Ну и предложить купить билет на сеанс, если они еще остались. Со скидкой, разумеется… :-)

                                                                                                        +2

                                                                                                        Я собственно не понимаю зачем это все? Что теряют кинотеатры? Наоборот, чувак покупает у них билеты для своих пользователей. Они ему ещё и доплачивать должны.

                                                                                                          +1
                                                                                                          Порой тот сайт и кинотеатр это разные собственники. Сайт получает процент от продаж только той части билетов которые были проданы через сайт.
                                                                                                            +1
                                                                                                            Но разве покупка происходит не через их сайт?
                                                                                                            Кажется это может вредить, если сайт не получает процент с продаж, а только с рекламы.
                                                                                                              –1
                                                                                                              1. Покупатель привыкает ходить на аггрегатор. Через какое-то время аггрегатор получает контроль над аудиторией и может манипулировать выдачей.


                                                                                                              2. На сайте аггрегатора приходится прямо конкурировать с другими кинотеатрами.


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


                                                                                                              4. Через аггрегатор сложно проводить стимулирующие продажи мероприятия (программы лояльности, скидки, конкурсы, лотереи и т.п.).


                                                                                                              5. На чужом сайте не работает наш мерчендайзинг.
                                                                                                            0
                                                                                                            Порой тот сайт и кинотеатр это разные собственники. Сайт получает процент от продаж только той части билетов которые были проданы через сайт.
                                                                                                              +1
                                                                                                              Надо понимать, что если аггрегатор хорошо раскрутится, то может начать навязывать правила игры для кинотеатров. Сегодня аггрегатор покупает билеты через headless chrome, а завтра ставит перед фактом, что 50% билетов проходит через него, и без аффилиатского вознаграждения в 15% покупатели будут направлены на другие кинотеатры, а для конкретного всегда будет написано «все места проданы» (то есть, мгновенная потеря половины прибыли кинотеатра). А кинотеатр, который заплатит 20%, еще и плашку «а тут есть места получше» получит, которая будет выводится при выборе мест у не столько щедрых конкурентов.

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

                                                                                                              Все таки надо понимать, что интернет — это поле битвы за внимание. И внимание контролирует тот, чей домен пользователь вводит в адресной строке. А как монетизировать, это уже другой вопрос
                                                                                                                +3
                                                                                                                без аффилиатского вознаграждения в 15% покупатели будут направлены на другие кинотеатры, а для конкретного всегда будет написано «все места проданы»
                                                                                                                За такое можно нарваться на иск. Тем более, что это претензия на монополизацию бизнеса.
                                                                                                                  0
                                                                                                                  За такое можно нарваться на иск. Тем более, что это претензия на монополизацию бизнеса.

                                                                                                                  Уверен, что поводы для исков и так есть. Часто в terms of use пишут, что запрещен сбор информации для коммерческого использования.
                                                                                                                  Просто надо понимать, что люди, делающие такие проекты морально к искам готовы. Сайт может быть зарегистрирован на Доминиканских островах. И, к тому же, попробуй доказать, что выдвигающий условия == владелец сайта. А вот кинотеатр, подав иск, усыхание ручейка прибыли почувствует сразу. У аггрегатора гораздо больше рычагов давления. Можно просто повесить бляшку на главной странице, что «участились жалобы на кинотеатр N, покупайте билеты на свой страх и риск», а разбираться, кто прав среднему зрителю не надо. Ему лучше просто выбрать кинотеатр, который без вопросов.
                                                                                                                    0
                                                                                                                    Ну пойдут прокатчики в РКН, скажут, что «бляшки» порочат их деловую репутацию и финита для агрегатора, на каких бы островах он бы ни был зарегистрирован.
                                                                                                                      0
                                                                                                                      Конкретно этот сайт не для российского рынка делается. В крайнем случае к моменту, пока прокатчики поднимут связи, можно бляшку и снять, осадок и так у людей останется.
                                                                                                                        0
                                                                                                                        к моменту, пока прокатчики поднимут связи, можно бляшку и снять, осадок и так у людей останется.
                                                                                                                        Значит и останется состав дела для иска. Речь про законные методы, когда суд будет снимать бляшки и взыскивать ущерб. Там еще могут потребоваться новые бляшки, но уже официально и с извинениями-опровержениями.
                                                                                                                  0
                                                                                                                  Вот только надо понимать, что один кинотеатр для агрегатора ничего не изменит. С ним или без него он раскрутится (или провалится) в любом случае.

                                                                                                                  Таким образом, сопротивление бесполезно в долгосрочной перспективе, и вредно в краткосрочной (агрегатор же покупателей приводит!).
                                                                                                                    +1
                                                                                                                    Тут так сразу не скажешь.
                                                                                                                    агрегатор же покупателей приводит!

                                                                                                                    и уводит тоже. Аггрегатор может чуть-чуть увеличить пирог для всех (к примеру, часть тех, кто смотрел Apple TV, начнет в кино ходить), пусть это будет +5%. И при этом может серьезно менять расклад сил, лишая кинотеатры своих фишек и маркетиговых уловок при выборе. Скажем, один кинотеатр получит +25% зрителей, потому, что он дешевый, и о нем люди просто мало знали, а второй -20% зрителей, потому, что дорогой, и люди узнали о первом, зайдя купить билет на второй.
                                                                                                                      0
                                                                                                                      Из второго люди все равно уйдут, независимо от того будет ли он представлен в агрегаторе.
                                                                                                                +1
                                                                                                                А и не нужно. В мире с каждым днём всё больше и больше информации. Мы хотим получать нужную для нас информацию. Поток данных стал настолько огромным, что без скраппинга «мозг вытечет» её просто анализировать. Да и с ним ситуация хоть и легче, но не намного.

                                                                                                                И человеку\компании всё же следует понимать, что они всего лишь человек\компания. Одни из многих. Есть другие люди, другие компании (кинотеатры). Мы уникальны, но не настолько. Есть масса альтернатив. Бороться нужно за внимание. Его уделяют. Значит чем-то полезны. Не будут уделять. Будет меньше влияния, прибыли. И в конечном итоге это приведёт к тому, что люди уйдут. Как раз к конкурентам.

                                                                                                                И даже такие сайты, аля авито, которым выгодно бороться со скраппингом (ведь они уникальные и такие единственные, сейчас) будут «наказаны». Ведь людям нужно не авито, а получить нужную услугу\информацию, и желательно максимально быстро, чтобы потом заняться чем-нибудь более важным и полезным. А это значит удобный доступ и отображение информации в нужном нам виде. Именно это и делают скрапперы.

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

                                                                                                                А нас уже совсем скоро будет 8 миллиардов. Вся эта «борьба» со скраппингом скорее напоминает позицию — «Назло маме уши отморожу». Ну… Успехов им. Добровольный путь к собственной деградации.
                                                                                                                  0
                                                                                                                  Сайты без полноценного апи для доступа к ним со временем полностью отомрут.

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

                                                                                                                  Что? Люди чтобы получить информацию пишут скраперы. Эх… мне бы машину купить тысяч на 20 долларов, напишу скрапер, который спарсит все б/у машины региона с ценой от 19 до 21 тысячи, натренирую ML модель, и выберу оптимум? Нет, в реальном мире люди так не поступают. А на том 0.01%, кто так делает, много не заработаешь.
                                                                                                                  Бороться нужно за внимание.

                                                                                                                  Золотые слова. И кинотеатр, пользователи которого покупают билеты через аггрегатор, его уже потерял. Он стал коммодити. Теперь аггрегатор сам решит, скольким пользователям его подсунуть, а от скольки запрятать на последнюю страницу поиска.
                                                                                                                    +1
                                                                                                                    Что? Люди чтобы получить информацию пишут скраперы.

                                                                                                                    Мне один раз пришлось на коленке писать такой, чтобы выхватить у хостера сервер по вкусной цене :-) Их было ограниченное количество, как только один освобождался, его сразу покупали (в списке была информация: последний продан столько-то времени назад). Я его караулил неделю — пропустил штук 10-15, потом написал бота и поймал за трое суток. Что навело меня на мысль, что бота написал не один я :-)

                                                                                                                      0
                                                                                                                      Аналогично с РЖД-билетами в горячий сезон) Их пачками вбрасывают на продажу с некоторой периодичностью до даты.
                                                                                                                        0
                                                                                                                        Я тоже подобные вещи делал;) На хабре таких много. Поэтому, и упомянул, что
                                                                                                                        А на том 0.01%, кто так делает, много не заработаешь.

                                                                                                                        И, кстати, конкретный пример с хостером очень показателен. Если такой ажиотаж, то, очевидно, что сервер можно было продать и дороже. То есть, хостер, по сути, просто жертвовал разницу между рыночной ценой, и ценой, по которой продавал фактически, и делал это ради маркетингового хода, чтобы люди паслись на сайте, и в конце концов купили по полной цене что-нибудь. А ботоводы, не давая реальным «мануальщикам» купить ни один сервер, этот маркетинговый ход портили, намекая им, что, возможно, серверов то и нет, и все это кидло)
                                                                                                                    0
                                                                                                                    Все же скрапинг или скрейпинг?
                                                                                                                      +1
                                                                                                                      И тут ваш бот попадает на Flash сайт (мне так заказывали скрапер для букмейкерской конторы — там Flash). Или на сайт с WebGL и вы идете курить бамбук
                                                                                                                        0
                                                                                                                        мне так заказывали скрапер для букмекерской конторы — там Flash

                                                                                                                        Я, кажется, даже понимаю, какой (если говорим об одной и той же, то там мобильный сайт с такой же скорость обновления, и на js). Как правило, есть мобильная версия не на Флеш, или мобильное приложение с простым протоколом, или можно протокол, который флеш использует, раскрутить.
                                                                                                                          0

                                                                                                                          SVG, canvas, можно на сервере картинки генерировать :-)

                                                                                                                            0
                                                                                                                            Желательно сразу с капча-формате)
                                                                                                                              0

                                                                                                                              не потребуется. Я думаю уже на необходимости ocr наш скрейпер скиснет.

                                                                                                                        0
                                                                                                                        С юридической точки зрения вконтактик нагнул ботов приставов и заставил платить (разрешил себя скрапить по соглашению сторон)
                                                                                                                          +1

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

                                                                                                                            +1
                                                                                                                            На самом деле статья довольно кривая.
                                                                                                                            Задача сайта ОТЛИЧИТЬ бота от не бота.
                                                                                                                            И судя по статье, если НЕ противодействовать в открытую — вы не поймете КАК вас отличают.
                                                                                                                            А вот блокировать — не надо.
                                                                                                                            А дальше игра начинается в обратные ворота.
                                                                                                                            Как я вас отличил и начал вам лить барахло в 1 из 3 запросов вместо контента?
                                                                                                                            Например в описании фильма другие актеры. Или картинка вдруг стала с моим логотипом, причем только начиная с 5 (+RAND(1-10)) запроса?
                                                                                                                            Как так получилось, что вы оформили билеты, а там 10 место в 5 ряду, а 5 место в 10 (в выдаче внезапно слова поменялись местами и добавилась, — вместо 10 место, ряд 5 стало 10 ряд, место 5)?
                                                                                                                            Причем для одного бота показывается одно, а для другого — другое. И таких вариантов «выдачи» можно нагенерировать десятки. Включая и выключая их периодически и для обычных пользователей. Заодно A/B тесты сделали.
                                                                                                                            Причем вот эти корявые email, BIN и тд дают прям 100% попадание.
                                                                                                                              0
                                                                                                                              Если админ сайта кинотеатра хорошо знает программирование и имеет много свободного времени, то почему бы и нет)
                                                                                                                              +1
                                                                                                                              Обычно в данных есть очень сладкие позиции, без которых парсинг бессмысленен, и которые не нужны поисковикам, т.е. которые можно не отдавать со страницей, в текущем примере — это свободные места. Вот чтобы их защитить и можно приложить усилия по шифрованию, обфускации js, чтобы тяжело было алгоритм шифрования вычленить, обфускации DOM и структурно и на уровне названий, не говоря про то что селениумы можно определить. А ещё бывают чёрные списки прокси, ведь при распараллеленой системе они захотят покупать дешёвые неуникальные и пачками, а чтобы защитить прокси-юзеров — использовать систему очков, где сам факт чёрного прокси уже прибавляет значительное их кол-во, но недостаточное, чтобы заблокировать простого юзера.
                                                                                                                                0
                                                                                                                                Вот чтобы их защитить и можно приложить усилия по шифрованию, обфускации js, чтобы тяжело было алгоритм шифрования вычленить, обфускации DOM и структурно и на уровне названий,

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

                                                                                                                                  Потом девочка отвлечется, ошибется, убежит в туалет...

                                                                                                                                +1
                                                                                                                                вы оформили билеты, а там 10 место в 5 ряду, а 5 место в 10 (в выдаче внезапно слова поменялись местами и добавилась, — вместо 10 место, ряд 5 стало 10 ряд, место 5)?


                                                                                                                                Странное решение странной проблемы.
                                                                                                                                Несколько десятков отзывов довольных пользователей, в том числе и по сарафанному радио (в кино обычно за 200 км не ездят) — и у вас билеты больше никто не купит. Да и кинотеатр тот будут обходить подальше.
                                                                                                                                  –1
                                                                                                                                  Странное решение странной проблемы.
                                                                                                                                  Несколько десятков отзывов довольных пользователей, в том числе и по сарафанному радио (в кино обычно за 200 км не ездят) — и у вас билеты больше никто не купит. Да и кинотеатр тот будут обходить подальше.

                                                                                                                                  А каким образом заказ на левом сервисе соотносится с кинотеатром?
                                                                                                                                  Вы заказали в кинотеатре билет? Нет.
                                                                                                                                  Вы заказали на сервисе, а он выдал вам корявые данные. Кто виноват? Очевидно сервис.
                                                                                                                                    0
                                                                                                                                    Я покупал билет в кинотеатр. В кинотеатре мне, вместо сеанса, начинают чего-то рассказывать… Что мне делать?
                                                                                                                                    Я купил билет у мошенников, и мне продали фантик? Заявление в полицию на агрегатора. Кинотеатр — свидетель. Не хочет быть свидетелем? Не соучастник ли он?
                                                                                                                                    Руководство кинотеатра по каким-то своим странным мотивам организовало продажу фиктивных билетов? Тогда они точно соучастники.
                                                                                                                                      +1
                                                                                                                                      У вас какая-то странная подмена понятий.
                                                                                                                                      Навроде той, что у людей, которые покупают брендовый товар где-то в китае и потом приходят к официальному дистрибьютору за гарантией.
                                                                                                                                      Вы купили у кинотеатра билеты? Нет
                                                                                                                                      Вы купили билеты у агрегатора. В случае каких-либо проблем вам надо обращаться к АГРЕГАТОРУ. Собственно теже MC и Visa вернут вам деньги по заявлению на агрегатора, а не на кинотеатр.
                                                                                                                                      Почему наши люди так не любят обращаться с проблемами туда, куда они платили деньги, а не к тому, кто им что-то должен или не должен.
                                                                                                                                      Собственно по пунктам:
                                                                                                                                      Я покупал билет в кинотеатр. В кинотеатре мне, вместо сеанса, начинают чего-то рассказывать… Что мне делать?

                                                                                                                                      Выяснять у вашего агрегатора что вы купили.
                                                                                                                                      Я купил билет у мошенников, и мне продали фантик? Заявление в полицию на агрегатора. Кинотеатр — свидетель. Не хочет быть свидетелем? Не соучастник ли он?

                                                                                                                                      У кинотеатра на сайте оформлен один билет, а агрегатор вам показывает другой. Кто виноват?
                                                                                                                                      Агрегатор действуя на СВОЙ страх и риск и ПО СВОЕЙ инициативе без какого-либо договора сканирует сайт кинотеатра и оформляет на ваше имя билет. Что-то у него там не получилось. Кто виноват? Кинотеатр? А разве он что-то обязан агрегатору?
                                                                                                                                      Руководство кинотеатра по каким-то своим странным мотивам организовало продажу фиктивных билетов? Тогда они точно соучастники.

                                                                                                                                      Вы купили билеты у руководства кинотеатра?
                                                                                                                                      Или на каком-то непонятном сервисе?
                                                                                                                                        0
                                                                                                                                        Ок.
                                                                                                                                        Агрегатор действуя на СВОЙ страх и риск и ПО СВОЕЙ инициативе без какого-либо договора сканирует сайт кинотеатра и оформляет на ваше имя билет.

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

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

                                                                                                                                        Покупать билеты лично у директора кинотеатра в присутствии нотариуса? К этом ни я, ни он не готовы ;)
                                                                                                                                        Но и покупать билеты через агрегатора я, кстати, не вижу смысла. Что оригинальный сайт, что агрегатор находятся на расстоянии клика мышки.
                                                                                                                                          +1
                                                                                                                                          Я, как покупатель, не имею возможности знать, в каких отношениях находится агрегатор и кинотеатр.

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

                                                                                                                                          Каким образом фантики? Проданы места, которые написаны. Если их парсер неправильно понял — это проблемы парсера.
                                                                                                                                          Вообще строить бизнес на чужом контенте и бравировать этим ну как-то нелепо.
                                                                                                                                          Покупать билеты лично у директора кинотеатра в присутствии нотариуса? К этом ни я, ни он не готовы ;)
                                                                                                                                          Но и покупать билеты через агрегатора я, кстати, не вижу смысла. Что оригинальный сайт, что агрегатор находятся на расстоянии клика мышки.

                                                                                                                                          Ну так в том-то и дело.
                                                                                                                                          Прикол тут в том, что они сделали агрегатора и парсят сайт и типа позволяют сделать заказ.
                                                                                                                                          И как вы не закрывайтесь — мы все равно отпарсим и закажем.
                                                                                                                                          Я же говорю о рисках совсем другого порядка.
                                                                                                                                          Кинотеатр никак не обязан этому агрегатору и то, что он им отдает вообще никак и ни к чему кинотеатр не обязывает. Он выдал схему вверх ногами и места справа налево вместо слева направо? Человеку норм, а вот скрипт заказал не то место. Привет.
                                                                                                                                            0
                                                                                                                                            Кинотеатр никак не обязан этому агрегатору


                                                                                                                                            Кто-то получил деньги за билет-фантик.
                                                                                                                                            Кто-то мошенник.
                                                                                                                                              0
                                                                                                                                              Агрегатор и получил)
                                                                                                                                                0
                                                                                                                                                Не может такого быть.
                                                                                                                                                Если билет продан — в базе кинотеатра от отмечен как проданный. Если отмечен — значит кинотеатр получил (или намерен получить) деньги.
                                                                                                                                                Если кинотеатр деньги получил, но билет не признает — налицо мошенничество.
                                                                                                                                                  0
                                                                                                                                                  Вы проиграете спор, потому что представляете действительность, в которой люди большинство действий делает на основе целого вороха эмоций, непонятных верований и комплексов. Оппонировать вам просто и красиво, поскольку логика и всем хочется ощущать себя разумными а не эмоциональными. Да, большое количество после проблем на агрегаторе перестанет покупать билет в кинотеатр, если есть не менее удобная альтернатива. Кинотеатру нужно проявить инициативу, потерять некоторое время, чтобы загладить впечатление, в котором он не виновен. Более того, жертва агрегатора ещё и в соц. сеть напишет, упомянув кинотеатр. И через неделю читатели, выбирая куда-то пойти, ощутят неясное давление, вроде как читали, вроде как был скандал, вроде кто-то виноват, не вспомнить теперь, лучше закажу билет в другой кинотеатр. И это ещё если в агрегатора нет хорошего пиарщика или пристойной репутации. Так действуют настоящие кожаные люди, потому подмена мест, вроде как логична для оторванного от реальности мозга программиста, может очень неприятно закончиться для кинотеатра в серой реальности.
                                                                                                                                                    0
                                                                                                                                                    Если билет продан — в базе кинотеатра от отмечен как проданный.

                                                                                                                                                    Давайте начнем с того, что билет кинотеатром продан не вам, а аггрегатору. Потому, что оплата проведена с его (аггрегатора) карточки. То есть с вами кинотеатр ни в каких отношениях не состояит.
                                                                                                                                                    Кстати… Вообще неплохая идея печатать на билете данные того, кому билет продан. Имя, фамилию, e-mail. Указанные при регистрации на сайте кинотеатра, разумеется :-)

                                                                                                                                                      0
                                                                                                                                                      Если билет продан — в базе кинотеатра от отмечен как проданный.

                                                                                                                                                      Давайте начнем с того, что билет кинотеатром продан не вам, а аггрегатору.


                                                                                                                                                      То есть, отправить папу, чтобы тот купил билеты в кино всему семейству, уже нельзя? Билет продан Васе Пупкину, а в кино идет Гена Шишкин — это недопустимо?

                                                                                                                                                      Потому, что оплата проведена с его (аггрегатора) карточки. То есть с вами кинотеатр ни в каких отношениях не состояит.


                                                                                                                                                      Это какая-то ооооочень запутанная схема получается. Деньги с карточки Васи Пупкина списаны, на счет агрегатора еще не поступили. Агрегатор покупает билет за свои деньги? Я бы так не делал.

                                                                                                                                                      Кстати… Вообще неплохая идея печатать на билете данные того, кому билет продан. Имя, фамилию, e-mail. Указанные при регистрации на сайте кинотеатра, разумеется :-)


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

                                                                                                                                                        Можно, но покупателем билета будет папа и договор у кинотеатра будет с папой.


                                                                                                                                                        Это какая-то ооооочень запутанная схема получается. Деньги с карточки Васи Пупкина списаны, на счет агрегатора еще не поступили. Агрегатор покупает билет за свои деньги? Я бы так не делал.

                                                                                                                                                        А как по вашему работает аггрегатор? Из текста статьи следует, что именно так:


                                                                                                                                                        Кинотеатр может заблокировать наш банковский идентификационный номер (BIN).
                                                                                                                                                        Решение: подать в суд или выпустить карты в обычном банке (например, Barclays).

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


                                                                                                                                                        В кино обязательно ходить с паспортом?

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

                                                                                                                                    +2
                                                                                                                                    С точки зрения пользователей агрегаторы очень полезны. Не надо лазить по гуглам яндексам и тыкаться в разные кинотеатры и смотреть где что и почем, в агрегаторе все на одной странице и часто фильтры по нужным параметрам. Если какой кинотеатр будет сопротивляться и зажимать свою информацию, тот в итоге останется без продаж.
                                                                                                                                    Отели давно уже не воюют с агрегаторами и даже со своих сайтов отправляют делать заказ к аргегатору. Авиакомпании тоже не против продаж билетов через агрегаторы. Почему кинотеатры сопротивляются — мне непонятно вообще, если они получают продажи. Видимо владелец сайта кинотеатра хочет построить на сайте кинотеатра свой какой-то мелкий бизнес, что является еще бОльшим паразитизмом, чем агрегация.
                                                                                                                                    Контент типа текстов с авторскими правами — это вообще другая тема и ее сюда не надо мешать.
                                                                                                                                      +2
                                                                                                                                      Видимо, есть некая критическая точка популярности аггрегат