Generator Losowych Ciągów User Agent - Tworzenie Identyfikatorów Przeglądarek
Generuj autentyczne ciągi user agent dla Chrome, Firefox, Safari i Edge. Testuj kompatybilność przeglądarek, responsywne projekty i interfejsy API za pomocą realistycznych identyfikatorów przeglądarek.
Generator Losowych Agentów Użytkownika
Generuj losowe, realistyczne ciągi agentów użytkownika przeglądarek do testowania rozwoju stron internetowych.
Wygenerowany Agent Użytkownika
Dokumentacja
Generator losowych identyfikatorów użytkownika
Generator losowych identyfikatorów użytkownika tworzy przykładowe ciągi user agent, czyli krótkie wiersze tekstu wysyłane przez przeglądarkę internetową do witryny w celu przedstawienia się. Narzędzie tworzy ciągi zgodne z rzeczywistym formatem używanym przez Chrome, Firefox, Safari i Edge na komputerach oraz urządzeniach mobilnych, dzięki czemu deweloperzy mogą testować reakcję witryny na różne przeglądarki bez instalowania każdej z nich.
Czym jest ciąg user agent?
Za każdym razem, gdy przeglądarka żąda strony internetowej, wysyła nagłówek HTTP User-Agent. Nagłówek jest pojedynczym wierszem tekstu opisującym nazwę przeglądarki, jej wersję, system operacyjny oraz silnik renderujący, czyli część przeglądarki, która rysuje stronę. Witryna może odczytać ten nagłówek, aby zdecydować, jaki układ strony lub jakie funkcje odesłać.
Typowy ciąg user agent wygląda tak:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
2Niemal każda przeglądarka rozpoczyna swój ciąg od „Mozilla/5.0”. Jest to pozostałość z 1990 roku, gdy witryny sprawdzały obecność tego słowa, aby ocenić, czy przeglądarka jest wystarczająco zdolna do wyświetlenia strony. Nowsze przeglądarki zachowały ten token, aby stare mechanizmy sprawdzające ich nie blokowały.
Jak działa ten generator
Narzędzie ma trzy ustawienia:
- Typ urządzenia – komputer stacjonarny lub urządzenie mobilne.
- Rodzina przeglądarek – Chrome, Firefox, Safari lub Edge.
- System operacyjny – Windows, macOS lub Linux dla komputerów; iOS lub Android dla urządzeń mobilnych.
Nie każda kombinacja występuje w rzeczywistości, dlatego narzędzie ogranicza dostępne opcje. Safari pojawia się tylko w systemach macOS i iOS, ponieważ firma Apple nie udostępnia Safari dla Windows, Linux ani Androida. Chrome, Firefox i Edge są dostępne we wszystkich wymienionych systemach, w tym w iOS, gdzie działają jako nakładka na silnik WebKit firmy Apple, a nie na własne silniki.
Kliknięcie „Generate New” tworzy ciąg na podstawie tych trzech ustawień oraz losowo wybranego numeru wersji. Przycisk „Copy” kopiuje wynik do schowka.
Format ciągu user agent według przeglądarki
Każda przeglądarka wypełnia podobny szablon własnymi tokenami.
Chrome (komputer):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36
2Chrome (Android):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Mobile Safari/537.36
2Chrome (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/major.0.build.build Mobile/15E148 Safari/604.1
2Firefox (komputer):
1Mozilla/5.0 (platform; rv:major.0) Gecko/20100101 Firefox/major.0
2Firefox (Android):
1Mozilla/5.0 (Android version; Mobile; rv:major.0) Gecko/major.0 Firefox/major.0
2Firefox (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/major.0 Mobile/15E148 Safari/605.1.15
2Safari (macOS):
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor Safari/605.1.15
2Safari (iOS):
1Mozilla/5.0 (iPhone; CPU iPhone OS major_minor like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor Mobile/15E148 Safari/604.1
2Edge (komputer):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Safari/537.36 Edg/major.0.build.build
2Edge (Android):
1Mozilla/5.0 (platform) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/major.0.0.0 Mobile Safari/537.36 EdgA/major.0.build.build
2Edge (iOS):
1Mozilla/5.0 (platform) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/major.minor EdgiOS/major.0.build.build Mobile/15E148 Safari/605.1.15
2Firma Apple wymaga, aby każda przeglądarka w iOS korzystała z WebKit, dlatego przedstawione wyżej formy dla iOS zawierają wspólny token silnika Safari AppleWebKit/605.1.15 oraz dodają znacznik właściwy dla przeglądarki: CriOS/ dla Chrome, FxiOS/ dla Firefoksa i EdgiOS/ dla Edge. Żadna z nich nie zawiera tokenu Chrome/ ani Gecko/. Safari i Edge w iOS wysyłają również token Version/, który określa wersję Safari dołączoną do systemu operacyjnego, dlatego zawsze odpowiada wersji iOS w tym samym ciągu.
Od 2021 roku Chrome i przeglądarki oparte na Chromium, takie jak Edge, zamroziły większość numeru wersji na komputerach i urządzeniach z Androidem, aby ograniczyć ilość informacji identyfikujących w nagłówku. Google nazywa tę zmianę „redukcją user agent”. Zamiast rzeczywistego numeru kompilacji token Chrome w tych ciągach zawsze ma postać major.0.0.0, na przykład 128.0.0.0, a ten generator odwzorowuje to zachowanie. Wyjątkiem jest własny token Edge’a — Edg/ na komputerach, EdgA/ na Androidzie i EdgiOS/ w iOS — oraz Chrome działający w iOS (CriOS/), które nadal zawierają pełny, czteroczęściowy numer kompilacji, ponieważ zasady redukcji Google ich nie obejmują.
Firefox nie zastosował tego samego zamrożenia. Jego rzeczywisty numer wersji składa się zwykle tylko z dwóch części, major.0, i taki numer tworzy generator. Trzyczęściowa wersja Firefoksa, na przykład 95.0.2, może pojawić się po poprawce bezpieczeństwa, ale to narzędzie generuje tylko formę dwuczęściową.
Przykładowe wyniki
Chrome na komputerze z systemem Windows:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
2Firefox na komputerze z systemem macOS:
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:130.0) Gecko/20100101 Firefox/130.0
2Safari na komputerze z systemem macOS:
1Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15
2Edge na komputerze z systemem Windows:
1Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 Edg/128.0.2903.86
2Chrome na urządzeniu mobilnym z Androidem:
1Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36
2Edge na urządzeniu mobilnym z Androidem:
1Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36 EdgA/128.0.2952.62
2Safari mobilne na iPhonie:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Mobile/15E148 Safari/604.1
2Firefox na urządzeniu mobilnym z Androidem:
1Mozilla/5.0 (Android 13; Mobile; rv:130.0) Gecko/130.0 Firefox/130.0
2Chrome mobilny na iPhonie:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/128.0.6613.98 Mobile/15E148 Safari/604.1
2Firefox mobilny na iPhonie:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/130.0 Mobile/15E148 Safari/605.1.15
2Edge mobilny na iPhonie:
1Mozilla/5.0 (iPhone; CPU iPhone OS 17_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 EdgiOS/128.0.2952.62 Mobile/15E148 Safari/605.1.15
2Różnice między komputerem a urządzeniem mobilnym
Ciągi dla komputerów podają system operacyjny i często architekturę procesora: Win64; x64 dla systemu Windows 64-bitowego albo Intel Mac OS X dla komputera Mac. Są dość jednolite, ponieważ trzeba w nich uwzględnić tylko kilka platform komputerowych.
Ciągi dla urządzeń mobilnych zwykle zawierają słowo „Mobile”, aby witryna wiedziała, że powinna wyświetlić układ dostosowany do obsługi dotykowej. Urządzenia z iOS identyfikują się jako „iPhone” wraz z wersją iOS zapisaną za pomocą podkreśleń (17_4), bez końcowego zera poprawki, czyli 17_4 zamiast 17_4_0. Android działa inaczej: z powodu tej samej zasady redukcji wersji, która obejmuje numer kompilacji Chrome, Chrome i Edge na Androidzie zawsze zgłaszają platformę jako Linux; Android 10; K, niezależnie od faktycznej wersji Androida lub modelu telefonu. „K” jest symbolem zastępczym, a nie rzeczywistym kodem urządzenia, zaś prawdziwa wersja Androida pozostaje ukryta. Firefox na Androidzie nie zamraża wersji w ten sam sposób i zamiast tego podaje rzeczywistą główną wersję Androida, ale w ogóle nie uwzględnia modelu urządzenia. Generator pokazujący konkretny model telefonu, na przykład numer modelu Galaxy, w ciągu Chrome dla Androida nie odpowiadałby działaniu współczesnego Chrome.
Dlaczego ciągi user agent wyglądają na skomplikowane
Ciąg wygląda na przeładowany z powodu dziesięcioleci poprawek zgodności. Podczas „wojen przeglądarek” pod koniec 1990 roku niektóre witryny wysyłały lepsze strony wyłącznie do Netscape’a albo wyłącznie do Internet Explorera, sprawdzając słowa kluczowe w nagłówku. Konkurencyjne przeglądarki zaczęły dodawać te same słowa kluczowe do własnych ciągów, aby nie były odrzucane. Dlatego ciąg Chrome nadal wspomina „Safari” i „like Gecko”, mimo że nie korzysta z żadnego silnika o takiej nazwie. Każdy token jest pozostałością dawnego uzgodnienia mającego spełnić wymagania starego testu zgodności, a nie prawdziwym opisem oprogramowania.
Ponieważ tak wiele witryn nadal analizuje te ciągi, twórcy przeglądarek nie mogą po prostu usunąć ich nadmiarowych elementów bez ryzyka uszkodzenia stron. Długoterminowym zamiennikiem jest User-Agent Client Hints, który wysyła informacje o przeglądarce jako osobne, uporządkowane nagłówki zamiast jednego długiego ciągu, ale klasyczny nagłówek User-Agent nadal jest wysyłany wszędzie ze względu na zgodność wsteczną.
Typowe zastosowania
- Testowanie zgodności. Sprawdzanie, jak strona jest renderowana po wykryciu konkretnej przeglądarki, bez instalowania tej przeglądarki.
- Sprawdzanie responsywności. Potwierdzanie, że witryna wyświetla układ mobilny po otrzymaniu mobilnego identyfikatora user agent, a w przeciwnym razie układ komputerowy.
- Automatyczne zestawy testów. Przekazywanie różnych ciągów user agent do skryptów testowych w celu sprawdzenia, czy kod wykrywający przeglądarkę prawidłowo obsługuje każdy z nich.
- Testowanie interfejsów API i nagłówków. Weryfikowanie, czy serwer prawidłowo działa, gdy żądania wysyłają różne typy klientów.
Ograniczenia
Nagłówek user agent jest tylko jednym z wielu sygnałów, które witryna może odczytać. Skrypty uruchamiane na stronie mogą sprawdzać dziesiątki innych szczegółów, takich jak zainstalowane czcionki, rozmiar ekranu oraz sposób renderowania obrazu testowego przez kartę graficzną — technikę tę nazywa się odciskiem palca przeglądarki. Ustawienie identyfikatora Chrome podczas rzeczywistego przeglądania w Firefoksie nie zmyli witryny sprawdzającej te inne sygnały; rozbieżność można łatwo wykryć. W codziennej pracy deweloperskiej i kontroli jakości poprawnie sformatowany wygenerowany ciąg wystarcza jednak do testowania reakcji kodu serwera i klienta witryny na różne przeglądarki i urządzenia.
Często zadawane pytania
Czym jest ciąg user agent? Jest to wiersz tekstu wysyłany przez przeglądarkę przy każdym żądaniu internetowym, zawierający nazwę przeglądarki, jej wersję, system operacyjny i silnik renderujący. Serwery używają go do decydowania, jaką treść lub jaki układ odesłać.
Dlaczego wersja Chrome zawsze kończy się na .0.0.0?
Od 2021 roku Chrome zamraża większość numeru wersji podawanego w nagłówku User-Agent, aby ograniczyć możliwość tworzenia odcisku przeglądarki. Zmienia się tylko główny numer wersji, a pozostała część jest stała i wynosi .0.0.0. Własny token Edge’a oraz wszystkie przeglądarki w iOS są wyjątkami i nadal pokazują pełny numer kompilacji.
Dlaczego ciąg iPhone’a zawiera słowo „Safari”, nawet gdy wybrano inną przeglądarkę?
Firma Apple wymaga, aby wszystkie przeglądarki w iOS korzystały z jej silnika WebKit, dlatego Chrome, Firefox i Edge w iOS zgłaszają WebKit i kończą się tokenem Safari/. Przeglądarka jest określana osobnym znacznikiem: CriOS/ dla Chrome, FxiOS/ dla Firefoksa i EdgiOS/ dla Edge.
Dlaczego ciąg Androida nie pokazuje modelu mojego telefonu?
Współczesne przeglądarki Chrome i Edge na Androidzie zgłaszają stały ciąg platformy Linux; Android 10; K dla każdego urządzenia i każdej rzeczywistej wersji Androida, w ramach tej samej zasady redukcji wersji, która obejmuje numer kompilacji Chrome. Rzeczywisty model i wersja Androida nie są ujawniane.
Czy mogę używać wygenerowanego ciągu user agenta do skrobania stron?
Zmiana nagłówka jest możliwa, ale witryny mogą wykryć rozbieżność na podstawie innych sygnałów, a skrobanie może naruszać warunki korzystania z witryny lub zasady określone w pliku robots.txt. Przed rozpoczęciem skrobania należy sprawdzić zasady obowiązujące w danej witrynie.
Czy wygenerowany ciąg jest identyczny z ciągiem z prawdziwego urządzenia? Ma taki sam format i kolejność tokenów jak rzeczywista przeglądarka tego typu. Z powodu zamrożenia wersji Chrome i Edge na Androidzie wygenerowany ciąg Chrome dla Androida i rzeczywisty ciąg mogą być identyczne w części dotyczącej platformy, ponieważ prawdziwe urządzenia zgłaszają tę samą stałą wartość.
Czym są Client Hints i czy zastępują ciąg user agent?
Client Hints to nowszy system, który wysyła informacje o przeglądarce i urządzeniu jako osobne nagłówki HTTP zamiast jednego połączonego ciągu. Przeglądarki dodają jego obsługę, ale klasyczny nagłówek User-Agent pozostaje powszechnie używany, ponieważ wiele istniejących witryn nadal na nim polega.