User-Agent
User-Agent to ciąg znaków w żądaniu, którym przeglądarka lub program informuje stronę, czym jest.
Zaktualizowano · Redakcja Prokso
Każde żądanie ma nagłówek User-Agent: nazwę i wersję przeglądarki, system operacyjny, typ urządzenia. Na jego podstawie strona decyduje, którą wersję strony pokazać.
Programy i biblioteki programistyczne mają własny User-Agent, który od razu zdradza automatyczne żądanie. Wiele stron odpowiada na niego odmową – kodem 403.
User-Agent to tylko jedna z cech, po których strona rozpoznaje odwiedzającego. Razem z pozostałymi tworzą odcisk przeglądarki.
Proxy zmienia adres IP, ale nie User-Agent: ustawia go Twój program. Ważne, żeby jedno nie przeczyło drugiemu, np. adres mobilny i nagłówek przeglądarki desktopowej.
Z czego składa się ciąg User-Agent
Typowy ciąg Chrome w Windows wygląda tak: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36. Słowo Mozilla/5.0 to pozostałość z przeszłości i występuje we wszystkich przeglądarkach. W nawiasach jest system i jego architektura, dalej silnik oraz nazwa przeglądarki z wersją.
Biblioteki opisują się krótko: python-requests/2.32 lub curl/8.5.0. Właśnie takie ciągi strony odsiewają najpierw. Swój aktualny User-Agent zobaczysz na stronie „Mój IP”, razem z IP, językiem przeglądarki i strefą czasową.
Co musi zgadzać się z User-Agent
Oprócz tego ciągu nowoczesny Chrome wysyła nagłówki Sec-CH-UA z tą samą nazwą i wersją, a strona odczytuje navigator.userAgent przez JavaScript. Jeśli podmienisz tylko nagłówek w rozszerzeniu, te trzy źródła się rozjadą i strona to zauważy.
Porównaj na stronie „Mój IP” jeszcze dwie rzeczy. Strefa czasowa według IP i według przeglądarki powinna być ta sama, a język przeglądarki powinien pasować do kraju adresu. Adres mobilnego operatora z ciągiem stacjonarnego Windows też wygląda dziwnie. Powtarzaj to sprawdzenie po każdej zmianie proxy lub profilu, a nie tylko raz na początku.
Typowe błędy i co robić
- Przestarzała wersja przeglądarki w ciągu, której prawie nikt już nie używa.
- Nowy User-Agent przy każdym żądaniu w jednej sesji z tymi samymi cookies.
- Ciąg telefonu komórkowego przy rozmiarze okna monitora stacjonarnego.
Pewniej jest ustawiać User-Agent w profilu przeglądarki antydetect, gdzie jest spójny z resztą odcisku przeglądarki. W skryptach używaj ciągu aktualnej przeglądarki i nie zmieniaj go w trakcie sesji.
Pytania i odpowiedzi (FAQ)
Czy muszę zmieniać User-Agent w skrypcie?
Domyślny nagłówek biblioteki od razu zdradza automatyczne żądanie. Zwykle zastępuje się go nagłówkiem aktualnej przeglądarki.
Czy proxy zmienia User-Agent?
Nie. Proxy zmienia tylko adres IP, a nagłówki wysyła Twój program.
Rezydencjalne $1.59, mobilne $2.50, serwerowe $0.65 za 1 GB
Rejestracja w minutę, dostęp od razu po płatności.