Някога чудили ли сте се как софтуерът се представя на сървърите? Въведете заглавката User-Agent
- цифров идентификатор, който разкрива важни подробности за клиента, който прави HTTP заявка. Както предстои да научите, настройването на потребителски агент за скрапинг е задължително!
User-Agent
е , автоматично зададена от приложения и библиотеки, когато се правят HTTP заявки. Той съдържа низ, който разкрива информацията за вашето приложение, операционна система, доставчик и версията на софтуера, който прави заявката.
Този низ е известен също като потребителски агент или UA . Но защо името „Потребителски агент“? просто! На ИТ език е всяка програма, библиотека или инструмент, който прави уеб заявки от ваше име.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36
Ако сте объркан от тази струна, не сте сами. Защо потребителски агент на Chrome ще съдържа думи като „Mozilla“ и „Safari“? 🤯
User-Agent
тук е като подробно досие, опаковащо името на браузъра, операционната система, архитектурата и понякога дори спецификата на устройството.
User-Agent
предоставя само основите, името на библиотеката и понякога версията.
User-Agent
е един от HTTP хедърите, които тези анти-бот системи внимателно разглеждат. В крайна сметка низът в тази заглавка помага на сървъра да разбере дали заявката идва от истински браузър с добре познат низ на потребителски агент. Нищо чудно, че User-Agent
е един от най-важните . 🕵️♂️
Заобиколното решение за избягване на блокове? Открийте подправяне на потребителски агент !
Не забравяйте, че User-Agent
не е нищо повече от HTTP хедър. Така че можете да му дадете каквато стойност искате. Промяната на потребителски агент за уеб скрапинг е стар трик, който ви помага да избегнете откриването и да се слеете като стандартен браузър. 🥷
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:129.0) Gecko/20100101 Firefox/129.0 Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Mozilla/5.0 (iPhone; CPU iPhone OS 17_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/127.0.6533.107 Mobile/15E148 Safari/604.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 14.6; rv:129.0) Gecko/20100101 Firefox/129.0 Mozilla/5.0 (Macintosh; Intel Mac OS X 14_6_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15 Mozilla/5.0 (Macintosh; Intel Mac OS X 14_6_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 OPR/112.0.0.0 Mozilla/5.0 (iPhone; CPU iPhone OS 17_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Mobile/15E148 Safari/604.1 Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.6533.103 Mobile Safari/537.36 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Edg/127.0.2651.98 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 OPR/112.0.0.0
Разбира се, това е само върхът на айсберга и списъкът може да продължи безкрайно. За изчерпателен и актуален списък с потребителски агенти за изтриване вижте сайтове като и .
И така, мислите ли, че просто замяната на User-Agent
по подразбиране на вашата HTTP клиентска библиотека с такъв от браузър може да свърши работа за избягване на анти-бот системи? Е, не съвсем…
Ако наводнявате сървър със заявки със същия User-Agent
и от същия IP адрес, вие всъщност развявате флаг, който казва: „Погледнете ме, аз съм бот!“ 🤖
За да подобрите играта си и да направите по-трудно усвояването на защитата срещу ботове, трябва да смесите нещата. Тук се намесва ротацията на потребителския агент . Вместо да използвате статичен User-Agent
от реалния свят, сменете го с всяка заявка.
Съберете списък с потребителски агенти : Съберете набор от UA низове от различни браузъри и устройства.
Извличане на произволен потребителски агент : Напишете проста логика за произволен избор на низ на потребителски агент от списъка.
Конфигурирайте своя клиент : Задайте произволно избрания низ на потребителски агент в заглавката User-Agent
на вашия HTTP клиент.
Заглавието User-Agent
разкрива подробности за софтуера и системата, които правят HTTP заявка. Вече знаете кой е най-добрият потребителски агент за уеб скрапинг и защо завъртането му е от решаващо значение. Но нека си признаем – ротацията на потребителския агент сама по себе си няма да е достатъчна срещу сложната защита от ботове.