Strona główna Dokumentacja Crawler SEO on-page
Dokumentacja crawlera

GSCWizard-Bot | narzędzie GSC Wizard do sprawdzania SEO on-page

GSCWizard-Bot/1,0 (On-Page SEO Checker) to user agent, którego używa GSC Wizard do obsługi raportu SEO on-page. Pobiera jedną stronę HTML naraz, aby sprawdzić, czy najlepiej pozycjonowane zapytania strony w Google Search Console występują w jej tagach <title>, <meta name="description"> i <h1>. Może też żądać plików pomocniczych, takich jak robots.txt i sitemap.xml.

Ciąg user agent
GSCWizard-Bot/1.0 (On-Page SEO Checker)
Przeznaczenie
Kontrole SEO on-page
Wyzwalacz
Tylko z inicjatywy użytkownika
Respektuje robots.txt
Tak
Pamięć podręczna
Do 7 dni dla każdego adresu URL

Czym jest GSCWizard-Bot?

GSCWizard-Bot to crawler, który obsługuje raport SEO on-page w GSC Wizard. Działa tylko wtedy, gdy zalogowany użytkownik otwiera raport dla usługi Google Search Console, którą posiada: nie przeszukuje otwartego internetu, nie podąża za linkami i nie buduje żadnego indeksu.

Jeśli widzisz ten user agent w logach dostępu, oznacza to, że zweryfikowany właściciel Twojej witryny (lub ktoś z dostępem do Twojej usługi w Search Console) otworzył w GSC Wizard narzędzie do sprawdzania SEO on-page i poprosił o analizę Twoich stron.

Ten sam user agent jest używany, gdy zalogowany właściciel prosi GSC Wizard (lub serwer MCP GSC Wizard) o odczytanie jednej z Twoich map witryn XML, na przykład w raporcie skuteczności map witryn, który łączy adresy URL z mapy z ich kliknięciami i wyświetleniami w Search Console. To pojedyncze żądanie samego pliku mapy witryny (oraz map podrzędnych w przypadku indeksu map witryn), a nigdy skanowanie wymienionych w niej adresów URL.

Możesz więc widzieć także żądania GSCWizard-Bot o pliki takie jak robots.txt i sitemap.xml. Bot czyta robots.txt, aby znaleźć zawarte w nim dyrektywy Sitemap: (a gdy żadnej nie ma, sięga po /sitemap.xml), dzięki czemu może sprawdzić, które z Twoich stron znajdują się w mapie witryny XML.

Co sprawdza crawler

Dla każdej pobranej strony GSCWizard-Bot wyodrębnia trzy elementy HTML i porównuje je z zapytaniem o największej liczbie wyświetleń, dla którego ta strona już się pozycjonuje w Google Search Console w ciągu ostatnich 28 dni.

1 Tytuł strony: <title>

Odczytuje zawartość tagu <title> i sprawdza, czy występuje w niej każde istotne słowo (3 lub więcej znaków) z najlepszego zapytania w GSC. Pokazuje aktualny tytuł dosłownie, razem ze znacznikiem zaliczone/niezaliczone.

2 Meta description: <meta name="description">

Odczytuje atrybut content meta description i sprawdza to samo pokrycie słów kluczowych. Zapisuje też aktualną długość w znakach.

3 Nagłówki H1: <h1>

Wyodrębnia każdy <h1> na stronie i sprawdza, czy któryś z nich zawiera docelowe słowa kluczowe.

To wszystko. GSCWizard-Bot nie wykonuje JavaScriptu, nie renderuje stron, nie pobiera arkuszy stylów ani skryptów, nie podąża za linkami na Twoich stronach i nie zbiera żadnych innych danych. Przy kontrolach stron czyta wyłącznie surową odpowiedź HTML. Jedynym wyjątkiem jest audyt pliku produktowego: gdy sprzedawca podłącza własne konto Google Merchant Center, bot pobiera zdjęcia produktów wskazane w pliku produktowym tego sprzedawcy, aby zmierzyć ich wymiary w pikselach. Każde żądanie obrazu prosi tylko o pierwsze 64 KB (żądanie zakresowe), bot zachowuje szerokość i wysokość, a pobrane bajty odrzuca. Najpierw czyta plik robots.txt hosta obrazów, tak jak w przypadku stron, i pomija każdy obraz, którego ten plik zabrania. Nigdy nie pobiera obrazów znalezionych wewnątrz strony.

Sposób skanowania

Jedno żądanie na adres URL na uruchomienie, limit czasu 10 sekund

W ramach jednego uruchomienia każdy adres URL jest pobierany raz, ze sztywnym limitem czasu 10 sekund. Przekierowania są śledzone (do pięciu skoków, każdy sprawdzany ponownie). Ten sam adres URL może zostać pobrany ponownie przy kolejnym uruchomieniu, na przykład gdy powtarza się zaplanowany audyt albo właściciel witryny ponownie uruchamia raport, więc z czasem możesz widzieć powtórzone żądania dla tego samego adresu.

Wyniki w pamięci podręcznej do 7 dni

Pomyślnie przeskanowane adresy URL są zapisywane i używane ponownie przez zaplanowane uruchomienia w tle do 7 dni. Ponowne uruchomienie raportu przez użytkownika zawsze wywołuje nowe skanowanie, więc zmiany w tytule, meta description lub H1 widać od razu. Dlatego możesz zobaczyć powtórzone żądania dla tego samego adresu, gdy właściciel witryny aktywnie nad nim pracuje.

Ograniczona liczba stron

Skanowanie stron (kontrole on-page i skanowanie linków wewnętrznych) obejmuje najwyżej 1000 stron na uruchomienie, zawsze własnych stron usługi, wybranych spośród adresów URL, które Search Console raportuje dla tej usługi. Audyt pliku produktowego obejmuje każdy unikalny adres URL produktu w pliku Merchant Center sprzedawcy oraz obrazy, do których odwołują się wpisy w tym pliku; nie ma stałego limitu stron, a ogranicza go kultura skanowania: niewielka liczba równoległych żądań na host, wycofywanie się, gdy Twój serwer odpowiada kodem 429 lub 503, oraz opisane niżej reguły robots.txt.

robots.txt jest sprawdzany przed każdym pobraniem

Przed każdym pobraniem żywej strony lub obrazu z pliku produktowego crawler pobiera Twój plik robots.txt (raz na witrynę na uruchomienie) i ocenia jego reguły Allow / Disallow dla GSCWizard-Bot (a w razie ich braku dla *), w tym symbole wieloznaczne * i kotwice $. Zabronione adresy URL nigdy nie są pobierane; zamiast tego raport informuje o nich użytkownika. Brakujący lub niedostępny plik robots.txt jest traktowany jak „zezwól na wszystko”.

Może żądać robots.txt i map witryn XML

Przy sprawdzaniu pokrycia mapy witryny crawler żąda /robots.txt, aby znaleźć dyrektywy Sitemap:, w razie ich braku sięga po /sitemap.xml i podąża za indeksem map witryn na jeden poziom w głąb (najwyżej 50 plików map / 50 000 adresów URL). Adresy URL z map witryn służą tylko do porównania i nigdy nie trafiają do kolejki skanowania.

Tylko HTML, bez renderowania JS

Wysyła Accept: text/html i parsuje treść odpowiedzi bezpośrednio. Bez przeglądarki headless, bez wykonywania skryptów, bez pobierania zasobów.

Ochrona przed SSRF

Adresy URL, które wskazują na prywatne, wewnętrzne lub pętlowe zakresy IP, są blokowane, zanim zostanie wysłane jakiekolwiek żądanie sieciowe.

Jak zezwolić GSCWizard-Bot

Większość witryn nie wymaga żadnych zmian. Jeśli używasz WAF-a, warstwy zarządzania botami albo restrykcyjnej zapory, a raport SEO on-page wraca pusty (lub z błędami HTTP 403 / 429), dodaj ten user agent do białej listy.

robots.txt (jawne zezwolenie)

User-agent: GSCWizard-Bot
Allow: /

Cloudflare WAF i Bot Fight Mode

Dla własnych reguł niestandardowych (blokady krajów, reguły ASN i podobne) dodaj regułę w Security → WAF → Custom rules i umieść ją nad regułami, które blokują:

(http.user_agent contains "GSCWizard-Bot")

Action: Skip → All remaining custom rules
        (Pro plans and above: also All Super Bot Fight Mode rules)

To nie działa dla Bot Fight Mode, czyli ochrony przed botami w planie Free Cloudflare. Cloudflare uruchamia ją poza WAF-em, więc akcje Skip i Allow oraz Page Rules nie mają na nią wpływu. Poza całkowitym wyłączeniem jedynym wyjątkiem, który respektuje, jest reguła IP Access Rule dopasowana do żądania jako pierwsza; napisz do mnie, a podam aktualny adres serwera. GSCWizard-Bot jest teraz zweryfikowanym botem Cloudflare (zobacz Weryfikacja user agenta), którego domyślne ustawienia botów w Cloudflare nie ruszają, więc najpierw spróbuj bez tej reguły. IP Access Rule przepuszcza też ten adres obok Twoich pozostałych zabezpieczeń, więc dodawaj ją tylko wtedy, gdy żądania nadal są wyzywane.

Nginx

if ($http_user_agent ~* "GSCWizard-Bot") {
    set $allow_bot 1;
}
# use $allow_bot to bypass rate limits / challenges

Apache

SetEnvIfNoCase User-Agent "GSCWizard-Bot" allow_bot
<RequireAll>
    Require all granted
    Require env allow_bot
</RequireAll>

Jak zablokować GSCWizard-Bot

GSCWizard-Bot sprawdza Twój robots.txt przed każdym pobraniem strony i przestrzega jego reguł. Dodaj poniższą regułę, aby GSCWizard-Bot nie pobierał żadnej strony Twojej witryny: zablokowane adresy URL są pomijane i oznaczane w raporcie jako „Zablokowane przez robots.txt”, zamiast być skanowane:

User-agent: GSCWizard-Bot
Disallow: /

Jeśli wolisz twardą blokadę na brzegu sieci, zadziała każda reguła odrzucająca żądania, w których nagłówek User-Agent pasuje do GSCWizard-Bot: odwróć powyższe reguły zezwalające.

Weryfikacja user agenta

Mój crawler wysyła jeden z trzech ciągów user agent. Narzędzie do sprawdzania SEO on-page (kontrole title / meta description / H1 i odczyty map witryn) używa pierwszego; rozszerzony audyt techniczny (który wykonuje też żądania robots.txt i wykrywania map witryn) używa drugiego; audyt pliku produktowego Merchant Center używa trzeciego, gdy mierzy wymiary zdjęć produktów wskazanych w pliku sprzedawcy:

GSCWizard-Bot/1.0 (On-Page SEO Checker)
GSCWizard-Bot/1.0 (Full On-Page Checker)
GSCWizard-Bot/1.0 (Feed Audit image probe)

Wszystkie trzy mają wspólny prefiks GSCWizard-Bot, więc pojedyncza reguła dopasowania fragmentu je obejmuje. Żądania stron niosą nagłówek Accept: text/html i pochodzą z moich serwerów aplikacyjnych. Sam ciąg user agent niczego jednak nie dowodzi, bo każdy może go skopiować. Jeśli chcesz mieć pewność, sprawdź podpis opisany poniżej.

Weryfikacja kryptograficzna (Web Bot Auth)

Każde żądanie GSCWizard-Bot jest podpisane kluczem Ed25519 z użyciem HTTP Message Signatures (RFC 9421), czyli tego samego schematu Web Bot Auth, którego Cloudflare używa do identyfikacji zweryfikowanych botów. Podpisane żądanie niesie trzy dodatkowe nagłówki:

Signature-Agent: "https://tool.gscwizard.com/.well-known/http-message-signatures-directory"
Signature-Input: sig1=("@authority" "signature-agent");created=...;keyid="...";alg="ed25519";expires=...;nonce="...";tag="web-bot-auth"
Signature: sig1=:...:

Mój klucz publiczny jest opublikowany jako JSON Web Key Set pod adresem tool.gscwizard.com/.well-known/http-message-signatures-directory. Zweryfikuj podpis względem tego klucza, a będziesz wiedzieć, że żądanie pochodzi ode mnie i nie zostało odtworzone wobec innego hosta: podpis obejmuje host, do którego został wysłany, i wygasa po pięciu minutach.

GSCWizard-Bot znajduje się w katalogu zweryfikowanych botów Cloudflare z tym kluczem, więc na witrynie w Cloudflare podpis jest sprawdzany za Ciebie. Cloudflare pomija zweryfikowane boty w domyślnych ustawieniach botów, a w regułach niestandardowych możesz je dopasować polem Known Bots, cf.client.bot.

Jeśli widzisz żądanie podające się za GSCWizard-Bot bez prawidłowego podpisu, to nie ja; potraktuj je odpowiednio i daj mi znać.

Pytania i zgłoszenia nadużyć

Jeśli uważasz, że GSCWizard-Bot działa nieprawidłowo, skanuje więcej, niż opisano powyżej, albo chcesz, żebym całkowicie przestał skanować Twoją witrynę, napisz do mnie:

Porady o Search Console prosto do Twojej skrzynki

Praktyczne sposoby pracy z GSC i GA4, nowości w produkcie i eksperymenty SEO. Bez spamu, wypisać się możesz w każdej chwili.