Narodziny bota indeksującego sieć — PromptCloud
Opublikowany: 2019-02-27Boty indeksujące sieć od dłuższego czasu są nieodzownym elementem sukcesu firm. E-commerce, Podróże, Praca i Ogłoszenia to jedne z głównych domen, które wykorzystują boty-roboty w centrum swojej strategii konkurencyjnej.
Więc co właściwie robią roboty indeksujące sieci? W większości przechodzą przez setki tysięcy stron w witrynie, pobierając ważne informacje w zależności od ich dokładnego celu w sieci. Niektóre boty są zaprojektowane do pobierania danych o cenach z portali e-commerce, podczas gdy inne pobierają opinie klientów z internetowych biur podróży. Są też boty zaprojektowane do zbierania treści generowanych przez użytkowników, aby pomóc inżynierom AI w tworzeniu korpusów tekstowych do przetwarzania języka naturalnego.
We wszystkich tych przypadkach bot przeszukujący sieć musi zostać utworzony od podstaw dla docelowej witryny internetowej, na podstawie punktów danych, które musi wyodrębnić z tej witryny. W PromptCloud budujemy boty o różnej złożoności, dla wielu branż i zastosowań. Dzięki naszemu wieloletniemu doświadczeniu w indeksowaniu sieci opracowaliśmy proces krok po kroku, który ułatwia i usprawnia tworzenie botów. Przejdźmy szybko przez kroki związane z tworzeniem bota indeksującego sieć.
Etap 1. Zrozumienie, jak witryna reaguje na użytkowników
Zanim będziemy mogli zbudować bota do indeksowania nowej witryny, powinniśmy wiedzieć, w jaki sposób witryna współdziała z prawdziwym człowiekiem. Na tym etapie nasi inżynierowie biorą udział w nowej witrynie docelowej, aby uzyskać pomysł na poruszanie się po witrynie za pomocą zwykłej przeglądarki, takiej jak Google Chrome lub Mozilla Firefox. To rzuca trochę światła na interakcję przeglądarka-serwer, która pokazuje, w jaki sposób serwer widzi i przetwarza przychodzące żądanie. Zazwyczaj polega na zabawie z nagłówkami żądań i typami żądań za pośrednictwem protokołu http. Stanowi to podstawę do zbudowania bota, ponieważ bot będzie w pewnym sensie naśladować prawdziwego użytkownika na docelowej stronie internetowej.
Etap 2. Zapoznanie się z zachowaniem witryny z botem
W ramach drugiego kroku nasi inżynierowie wyślą część ruchu testowego w sposób zautomatyzowany, aby zrozumieć, jak różni się witryna wchodzi w interakcję z botem w porównaniu z użytkownikiem. Jest to konieczne, ponieważ większość nowoczesnych stron internetowych ma wbudowane pewne mechanizmy, które inaczej radzą sobie z botami. Zrozumienie tych mechanizmów pomogłoby nam wybrać najlepszą ścieżkę działania do zbudowania bota. Oto kilka typowych przykładów:
- Witryna ogranicza normalną nawigację po powiedzmy 20 stronach
- Żądanie zwraca kod stanu 301
- Witryna wyświetla w odpowiedzi obrazek captcha
- Serwer zwraca kod statusu 403 – oznacza to, że strona odmawia obsłużenia naszego żądania pomimo zrozumienia
- Ograniczony dostęp z określonej lokalizacji (w tym miejscu pojawiają się serwery proxy)
Większość stron internetowych jest dwustronna, inaczej traktują ludzi i boty – w ich obronie chroni ich przed złymi botami i różnymi formami cyberataków. Być może w pewnym momencie natknąłeś się na stronę internetową z prośbą o udowodnienie swojego człowieczeństwa, aby uzyskać dostęp do określonej strony lub funkcji. Boty często się z tym borykają. Dlatego przeprowadzamy ten test, aby w pełni zrozumieć witrynę z punktu widzenia bota.

Mamy również zautomatyzowaną warstwę, która jest następnie używana do określenia najlepszego podejścia do budowania bota do indeksowania konkretnej witryny. Przeprowadza łagodne testy warunków skrajnych w witrynie, aby wykryć punkty krytyczne, a następnie zwraca kilka kluczowych informacji, które wpływają na tworzenie bota robota, takie jak uśpienie, proxy/brak proxy, captcha, liczba możliwych równoległych żądań i inne.
Etap 3. Budowa bota
Gdy nasi inżynierowie uzyskają jasny plan witryny docelowej, nadszedł czas, aby rozpocząć tworzenie bota robota indeksującego. Złożoność kompilacji będzie zależeć od wyników naszych poprzednich testów. Na przykład, jeśli witryna docelowa jest dostępna tylko z, powiedzmy, Niemiec, będziemy musieli dołączyć niemiecki serwer proxy, aby pobrać witrynę. Podobnie, w zależności od konkretnych wymagań witryny, bot może współpracować ze sobą do 10 modułów.
Etap 4. Testowanie bota
Będąc dostawcą usług web scrapingu klasy korporacyjnej, przywiązujemy najwyższy priorytet do niezawodności i jakości danych. Aby to zapewnić, ważne jest, aby przetestować bota robota indeksującego w różnych warunkach, w godzinach szczytu witryny docelowej i poza nimi, zanim rozpocznie się faktyczne indeksowanie. W tym teście próbujemy pobrać losową liczbę stron z działającej witryny. Po zmierzeniu wyniku zostaną wykonane dalsze modyfikacje robota w celu poprawy jego stabilności i skali działania. Jeśli wszystko działa zgodnie z oczekiwaniami, bot może przejść do produkcji.
Etap 5. Wydobywanie punktów danych i przetwarzanie danych
Nasze roboty-roboty działają inaczej niż roboty wyszukiwarek, które większość ludzi zna. Podczas gdy boty wyszukiwarek, takie jak Google bot, po prostu indeksują strony internetowe i dodają je do swojego indeksu z pewnymi metadanymi, nasze boty pobierają pełną zawartość html stron do tymczasowego miejsca w pamięci, gdzie przechodzą wyodrębnianie i różne inne procesy w zależności od wymagania klienta.
Nazywamy ten etap ekstrakcją i tutaj wymagane punkty danych są wyodrębniane ze wstępnie pobranych stron internetowych. Po wyodrębnieniu dane są automatycznie skanowane pod kątem zduplikowanych wpisów i deduplikowane. Następnym procesem w kolejce jest normalizacja, w której w danych wprowadzane są pewne zmiany w celu ułatwienia konsumpcji. Na przykład, jeśli wyodrębnione dane cenowe są w dolarach, można je przekonwertować na inną walutę przed dostarczeniem do klienta.
To był krótki przewodnik po tym, jak nasi inżynierowie podchodzą do nowej wersji bota indeksującego sieć. Zwróć uwagę, że wysoka wydajność botów zależy również od środowiska serwerowego i poziomu optymalizacji, który osiągnęliśmy przez lata. Stabilny stos technologiczny i infrastruktura są niezbędne do codziennego wydobywania milionów rekordów danych, bez dwóch identycznych botów.
