Реферальна програма →
ГоловнаГлосарійHoneypot-пастка
Глосарій

Honeypot-пастка

Прихована ссилка, поле чи сторінка, з якою ніколи не взаємодіють реальні користувачі, використовувана, щоб ловити й позначати ботів, які це роблять.

Honeypot-пастка - це елемент, який сайт розміщує спеціально, щоб ловити ботів. Він невидимий або недоступний для реальних користувачів - ссилка, прихована через CSS, поле форми за межами екрана або сторінка, на яку ведуть лише так, як людина ніколи б не пішла. Оскільки людина її ніколи не бачить, будь-який клієнт, що взаємодіє з нею, майже напевно автоматизований.

Класичний приклад - прихована ссилка в HTML, оформлена через display:none або уведена далеко за видиму область. Людина при звичайному серфінгу ніколи на неї не клікає, але наївний скрапер, що йде по кожній ссилці в DOM, клікне - і в момент, коли він запитає цей URL, сайт позначає IP або сесію як бота й блокує.

Honeypot також трапляються у формах як приховані поля. Реальний користувач залишає їх порожніми, бо поле невидиме; тупий заповнювач форм бот заповнює кожне знайдене поле, включно з пасткою, видаючи себе. Це поширена антиспам-техніка на формах коментарів і реєстрації.

Уникати honeypot - значить скрапити так, як сторінку сприйняла б людина: поважайте видимість CSS, не йдіть сліпо по кожній ссилці й не заповнюйте кожне поле, рендерте сторінку (або міркуйте про стилі), щоб відрізняти, що користувач реально побачив би й торкнув. У поєднанні з проксі для ротації IP акуратна логіка взаємодії тримає вас поза пастками.

Bait that only a machine takes

A honeypot in this context is content placed on a page specifically to catch automation. The classic form is a link hidden with CSS, invisible to a person and perfectly visible to a parser that reads the DOM. Following it announces that you are a machine.

Form fields work the same way. A hidden input that a human never fills gets populated by naive form automation, and the submission is discarded or flagged.

Some sites go further and serve poisoned data to clients they suspect: plausible but wrong prices, fabricated listings, subtly altered numbers. This is more dangerous than a block because it corrupts your dataset while your monitoring reports success.

Avoiding the obvious traps

Most honeypots are defeated by behaving like a renderer rather than a parser:

What to check before following a link

display: none        skip
visibility: hidden   skip
opacity: 0           skip
height/width: 0      skip
off-screen position  skip
rel="nofollow" on an odd link   treat with suspicion
  • In a headless browser, check computed visibility rather than the raw HTML. That single change removes most CSS-hidden traps.
  • Leave hidden form fields untouched. Fill only what a person would see.
  • Cross-check a sample of collected data against a manual fetch from a different address type. Poisoned data shows up only in comparison.
  • Sudden uniformity in your dataset, such as identical prices across unrelated listings, is worth investigating before it reaches a report.

Honeypot misconceptions

A honeypot is not a block

It is a marker. You may keep receiving 200s while everything you collect is worthless.

Rotating addresses does not help

The trap fires on behaviour, and every new address walks into it identically.

robots.txt entries are not honeypots by default

Some disallowed paths are traps, most are simply not meant for crawlers.

Not every hidden element is bait

Modals, menus and lazy content are hidden for ordinary reasons. Judge by whether a person could reach it.

Дивись на практиці

Готовий використовувати honeypot-пастка?

SotaProxy надає доступ до ротуючих резидентських, мобільних, дата-центр та ISP проксі. Без мінімальних платежів.

Почати