Краулінг

Процес сканування сайту автоматизованою системою

Краулінг (сканування, англ. crawling) — це процес сканування сайту автоматизованою системою. Сканування – початковий етап, дані збираються для подальшої внутрішньої обробки(побудова індексів) та не відображаються в результатах пошуку. Також може застосовуватись системами перевірки правопису [Архівовано 22 вересня 2020 у Wayback Machine.], посилань [Архівовано 2 березня 2019 у Wayback Machine.], Web scraping. Просканована сторінка не обов’язково є проіндексованою. У пошукової системи ресурси обмежені, а алгоритми краулінгу допоможуть оптимізувати процес: щоб для кожного сайту виділялася необхідна кількість «потужності», щоб успішно його індексувати.

Основні задачі ред.

  • швидка індексація;
  • швидка переіндексація (якщо відбулися зміни з документом);
  • якісні індекси (щоб в індекси потрапляли лише якісні документи, не потрапляв малоінформативний контент);

Краулінговий бюджет потрібен лише для сайтів з великим об’ємом інформації (від 100 сторінок). Адже маленькі сайти пошукова система проіндексує за відносно малу кількість часу (неділя, місяць). Також краулінг використовується для сайтів, що часто змінюються.


Пошуковий робот ред.

Пошуковий робот (crawler, краулер, павук, бот) – програма для збору контенту в інтернеті. Пошуковий робот складається з безлічі комп’ютерів, що обирають сторінки швидше, ніж користувач за допомогою свого веббраузеру. Фактично він може обробляти тисячі різних сторінок одночасно.

Принцип роботи краулера:

  • Максимальне охоплення мережі;
  • Економія серверних ресурсів;
  • Не сканувати те, що закрито;
  • Оцінка корисності документу ще до його відкриття(авторитетність сторінки, рівень на URL-сторінці(кількість слешів), і т.і.);
  • Оцінка корисності сайту після перших сканувань(уникнення сайтів с дублюванням, якісний контент);

Що впливає на краулінговий бюджет ред.

  • Швидкість віддачі, розмір документу;
  • Об’єм сайту;
  • Якість контенту (недопустима наявність малоінформативних сторінок);
  • Коди статусів (якщо не 200/304);
  • Відвідуваність сайту;
  • Виділення IP-адреси;
  • Популярність посилань (кількість, авторитетність посилань необхідні для пришвидшення індексації).

Для того, щоб подивитися на сайт очима краулера, потрібно вимкнути обробку JavaScript
Є декілька способів (на Google Chrome):

  1. Вимкнути через консоль розробника(F12)
  2. Використання інструменту «Подивитися як Googlebot»
  3. Спеціальне програмне забезпечення (http://pr-cy.ru/simulator/ [Архівовано 18 грудня 2017 у Wayback Machine.], https://netpeaksoftware.com/ru/spider [Архівовано 15 січня 2018 у Wayback Machine.] та інші).

Автоматизація краулінгу ред.

Crawljax: Crawling Ajax-based Web Applications - це Java-інструмент з відкритим кодом, що дозволить протестувати ваш web – додаток фактично імітуючи користувача по браузингу сайту. Crawljax може досліджувати сайт, що використовує технологію ajax, при цьому автоматично створюючи динамічний граф станів DOM.
В основу Crawljax покладено дослідження 2007 р. Алі Мешбаха та Арі Ван Дрьосена. Основна ідея була закладена в їх спільній праці «Exposing the Hidden-WebInduced by Ajax», в якій вони показали як динамічний сайт, що використовує технологію ajax, може бути представлений у вигляді графа статичних станів DOM та переходів між ними.
Пізніше ця робота використовувалася для створення алгоритмів для пошукових систем, що давали б змогу їм краулити та аналізувати зміст динамічних web-додатків.
В кінці роботи Crawljax формує html-репорт, що містить граф станів та переходів по сайту, статистику щодо своєї роботи, список відвідуваних url-ів та детальну інформацію щодо кожного стану, в який може переходити DOM.
Також використовують платформу Node.js і т.і..