Czym są BOTy indeksujące?
źródło: opracowanie własne
Często poruszamy temat złych, złośliwych BOTów, które stanowią obecnie tak duże zagrożenie dla wszystkich korzystających z dobrodziejstw Internetu. Tym razem, więc skupimy się na dobrych, pożytecznych BOTach, mających ułatwić życie użytkownikom internetu, a mianowicie na BOTach indeksujących, które inaczej nazywane są robotami sieciowymi lub internetowymi, pająkami (spiderami), pełzaczami (od angielskiego web crawler) oraz wędrowcami (od angielskiego web wanderer). Ale czym zajmują się te zautomatyzowane programy?
BOTy indeksujące to programy, które monitorują sieć w sposób zautomatyzowany w celu skatalogowania znajdujących się w niej treści. Powstały przede wszystkim jako wsparcie dla działania przeglądarek internetowych (takich jak Google, Bing czy Yahoo), które używają pełzaków do prawidłowego indeksowania witryn, aby użytkownicy mogli szybko odszukać interesujące ich strony. Bez tego rozwiązania przeglądarka byłaby nieaktualna – nie wiedziałaby o zmianach, które zaszły na danym serwisie, ani o nowych treściach, które się w nim pojawiły. Główne funkcje robotów sieciowych to więc sprawdzanie kodu i badanie zawartości stron internetowych, monitorowanie aktualizacji, tworzenie mirrorów stron, a czasem też gromadzenie dodatkowych informacji o danym serwisie. To właśnie ciężka praca spiderów pozwala na pozycjonowanie stron w wynikach wyszukiwarek.
Jakie są najbardziej znane BOTy indeksujące?
Istnieją setki mniej lub bardziej znanych robotów internetowych. Część z nich to stali bywalcy na prawie każdej stronie internetowej. Najbardziej popularne BOTy internetowe to:
- GoogleBot – BOTy wykorzystywane przez Google można dodatkowo podzielić na „Google’s fresh crawl”, a więc te odwiedzające strony często i regularnie, aby sprawdzić co się na nich zmieniło oraz „Google’s deep crawl”, których zadaniem jest pobieranie większej ilości danych z witryn.
- Bingbot – robot internetowy wyszukiwarki Bing wdrożony przez firmę Microsoft w 2010 r.
- Slurp Bot, nowsza wersja Yahoo Slurp – spider wykorzystywany przez wyszukiwarkę Yahoo. Zbadanie strony przez tego BOTa pozwala witrynie pojawić się w wynikach wyszukiwania Yahoo Mobile. Dodatkowo Slurp sprawdza i zbiera zawartość z witryn partnerskich w celu dołączenia ich do Yahoo News, Yahoo Finance i Yahoo Sports.
- DuckDuckBot – robot sieciowy wyszukiwarki DuckDuckGo, która znana jest z ochrony prywatności i coraz bardziej zyskuje na popularności. Obecnie obsługuje ponad 12 milionów zapytań dziennie.
- Baiduspider – to oficjalna nazwa BOTa indeksującego chińskiej wyszukiwarki Baidu, wiodącej chińskiej wyszukiwarki, która ma 80% udziału w całym rynku wyszukiwarek w Chinach kontynentalnych.
- YandexBot – robot internetowy największej rosyjskiej wyszukiwarki Yandex.
- Sogou Spider – BOT pracujący dla Sogou.com, chińskiej wyszukiwarki, która została uruchomiona w 2004 roku.
- Exabot – robot sieciowy francuskiej wyszukiwarki Exalead. Został stworzony w 2000 roku i obecnie ma ponad 16 miliardów zindeksowanych stron.
- FaceBOT – BOT Facebooka, dzięki któremu możliwe jest tymczasowe wyświetlanie niektórych obrazów lub szczegółów związanych z treściami internetowymi – jak tytuł strony czy tag osadzenia filmu, którymi podzielić się chcą użytkownicy Facebooka. FaceBOT pobiera te informacje dopiero po podaniu przez użytkownika linku. A jego zadaniem jest też poprawa wydajności reklam.
- ia_archiver – robot indeksujący internetowe rankingi Alexa firmy Amazon.
Oczywiście poza tymi, działającymi dla internetowych gigantów, są też inne rodzaje BOTów sieciowych. Na przykład Xenon to robot internetowy używany przez rządowe organy podatkowe Holandii, Austrii, Kanady, Danii, Wielkiej Brytanii i Szwecji do wyszukiwania stron internetowych (sklepów internetowych, stron hazardowych lub witryn pornograficznych), których właściciele uchylają się od płacenia podatków, a WebCrawler został wykorzystany do zbudowania pierwszego publicznie dostępnego indeksu podzbioru sieci Web.
Jak Działa BOT indeksujący?
Roboty internetowe otrzymują lub same tworzą listy adresów URL do odwiedzenia, zwanych nasionami. Kiedy BOT odwiedza te adresy URL, wyszukuje wszystkie hiperłącza na danym serwisie i dodaje je do listy adresów URL do odwiedzenia, zwanej granicą indeksowania. Jeśli dodatkowo do jego zadań należy archiwizacja stron - kopiuje i zapisuje dane na bieżąco. Archiwum nazywane Repozytorium zawiera najnowszą wersję danej strony pobraną przez robota indeksującego. Oczywiście tak duża ilość stron oznacza, że przeszukiwacz może pobrać ograniczoną liczbę informacji w określonym czasie – musi więc tworzyć hierarchię odwiedzin.
Co robot robi na stronie?
Kiedy już pająk wybierze stronę, którą chce odwiedzić identyfikuje się na serwerze WWW za pomocą nagłówka żądania User-Agent w żądaniu HTTP za pomocą swojego własnego unikalnego identyfikatora. W większości przypadków, ruch robota indeksującego można sprawdzić w dziennikach stron odsyłających serwera WWW. Następnie BOT gromadzi informacje na temat danej strony takie jak zawarte na niej treści, linki, uszkodzone linki, mapy witryn i weryfikacja kodu HTML, stosując się do określonych przez właściciela strony zasad.
Czy można uniknąć odwiedzin robotów indeksujących na danej stronie?
Czasem może zdarzyć się, że roboty indeksujące stale odpytują witrynę co może wywołać problemy z ładowaniem strony. Aby uniknąć takiej sytuacji administrator danej witryny może określić reguły jakich BOT internetowy będzie musiał przestrzegać na jego stronie – wykorzystując do tego plik robots.txt. Takie rozwiązanie zaproponował w lutym 1994 Martijn Koster podczas pracy dla firmy Nexor na forum dyskusyjnym www-talk i szybko stało się ono tym czego oczekiwano od obecnych i przyszłych robotów sieciowych. Natomiast obecną wersję zawdzięczamy Google, który 1 lipca 2019 r. ogłosił swój protokół Robots Exclusion Protocol lub też robot.txt oficjalnym standardem w ramach Internet Engineering Task Force.
Umieszczając odpowiednio zmodyfikowany plik robots.txt w katalogu głównym hierarchii witryny (np. https://www.example.com/robots.txt), można zdefiniować reguły dla robotów indeksujących, takie jak adresy URL, które mogą odwiedzać i tych, do których nie mają dostępu, zezwolenie na indeksowanie określonych zasobów lub blokowanie ich itp. BOTy sieciowe muszą przestrzegać reguł określonych w tym pliku – powinny pobrać plik i przeczytać instrukcje zanim pobiorą jakiegokolwiek inne dane ze strony internetowej. Możesz też określić czy te zasady mają dotyczyć wszystkich BOTów, czy tych z konkretnym User-Agentem. Jeśli plik robot.txt nie istnieje, roboty internetowe zakładają, że właściciel witryny nie chce nakładać na nie żadnych ograniczeń.