Ако вашият уеб скрепер продължава да се блокира, това може да се дължи на пръстовия ви отпечатък на TLS. Дори когато зададете вашите HTTP заглавки като браузър, анти-бот системите могат да забележат автоматизирани заявки, като анализират вашия TLS отпечатък по време на ръкостискането. Инструменти като cURL Impersonate, който имитира TLS конфигурации на браузъра, могат да помогнат за заобикаляне на тези блокове. За пълна свобода на сканиране обмислете използването на решения като API на Scraping Browser на Bright Data.
Вашият уеб скрепер е блокиран отново? Уф, какво сега? Вие приковахте тези HTTP заглавки и го направихте да изглежда точно като браузър, но сайтът все пак разбра, че заявките ви са автоматизирани. Как изобщо е възможно това? Просто: това е вашият TLS отпечатък! 😲
Потопете се в подъл свят на TLS пръстови отпечатъци, разкрийте защо е тихият убиец зад повечето блокове и ви научете как да го заобиколите.
Anti-Bot ви блокира отново? Време е да научите защо!
Да приемем, че имате работа с типичен сценарий за изстъргване. Вие правите автоматизирана заявка с помощта на HTTP клиент — като в Python или в JavaScript — за извличане на HTML на уеб страница, за да изтриете някои данни от нея.
Както вероятно вече знаете, повечето уебсайтове разполагат с . Любопитни ли сте за най-добрата технология против остъргване? Вижте нашето ръководство за най-добрите решения против остъргване! 🔐
Тези инструменти следят входящите заявки, като филтрират подозрителните.
Ако заявката ви изглежда като че идва от обикновен човек, можете да тръгнете. иначе? Ще бъде преграден! 🧱
Заявки за браузър срещу заявки за ботове
Сега, как изглежда заявка от обикновен потребител? лесно! Просто задействайте DevTools на браузъра си, отидете до раздела Мрежа и вижте сами:
Ако копирате тази заявка в cURL, като изберете опцията от менюто с десен бутон, ще получите нещо подобно:
Ако този синтаксис ви изглежда като китайски, не се притеснявайте – вижте нашето въведение в cURL . 📖
По принцип „човешката“ заявка е просто обикновена HTTP заявка с някои допълнителни заглавки (флаговете -H ). Анти-бот системите проверяват тези заглавки, за да разберат дали заявката идва от бот или легитимен потребител в браузър.
Едно от най-големите им червени знамена? Заглавката ! Разгледайте нашата публикация за най-добрите потребителски агенти за уеб скрапинг . Тази заглавка се задава автоматично от HTTP клиенти, но никога не съвпада напълно с тези, използвани от реалните браузъри.
Несъответствие в тези заглавки? Това е мъртъв подарък за ботове! 💀
За повече информация се потопете в нашето ръководство за .
Задаването на HTTP заглавки не винаги е решението
Сега може би си мислите: „Лесно решение, просто ще изпълнявам автоматизирани заявки с тези заглавки!“ Но изчакайте за секунда... 🚨
Продължете и стартирайте тази cURL заявка, която сте копирали от DevTools:
изненада! Сървърът ви отвърна със страница „403 Access Denied“ от Cloudflare. Да, дори със заглавките, подобни на браузъра, пак можете да бъдете блокирани!
Но чакайте, как?! Не е ли това абсолютно същата заявка, която браузърът би направил? 🤔 Е, не съвсем...
Ключът се крие в модела OSI
На ниво приложение на модела OSI, браузърът и cURL заявките са едни и същи. И все пак има всички основни слоеве, които може да пренебрегнете. 🫠
Някои от тези слоеве често са виновниците зад тези досадни блокове и прехвърлената там информация е точно това, върху което се фокусират напредналите технологии против изстъргване. Хитри подли зверове! 👹
Например, те разглеждат вашия , който се изтегля от мрежовия слой. Искате ли да избегнете тези IP забрани? Следвайте нашия урок за това как да избегнете IP бан с проксита !
За съжаление това не е всичко! 😩
Системите срещу ботове също обръщат голямо внимание на пръстовия отпечатък от защитения комуникационен канал, установен между вашия скрипт и целевия уеб сървър на транспортния слой.
Ето тук нещата се различават между браузър и автоматизирана HTTP заявка! Готино, нали? Но сега сигурно се чудите какво означава това... 🔍
Какво е TLS пръстов отпечатък?
е уникален идентификатор, който анти-бот решенията създават, когато вашият браузър или HTTP клиент създава защитена връзка към уебсайт.
Това е като цифров подпис, който вашата машина оставя след себе си по време на — първоначалният „разговор“ между клиент и уеб сървъра, за да решат как ще шифроват и защитят данните на транспортния слой. 🤝
Когато направите HTTP заявка към сайт, основната TLS библиотека във вашия браузър или HTTP клиент стартира процедурата за ръкостискане. Двете страни, клиентът и сървърът, започват да се питат взаимно неща като: „Какви протоколи за криптиране поддържате?“ и „Кои шифри трябва да използваме?“ ❓
Въз основа на вашите отговори сървърът може да разбере дали сте обикновен потребител в браузър или автоматизиран скрипт, използващ HTTP клиент. С други думи, ако отговорите ви не съвпадат с тези на типичните браузъри, може да бъдете блокирани.
Представете си това ръкостискане като среща на двама души:
Човешка версия :
Сървър: „Какъв език говорите?“
Браузър: "Английски, френски, китайски и испански"
Сървър: „Страхотно, нека поговорим“
Версия на бот :
Сървър: „Какъв език говорите?“
Бот: „Мяу! 🐈”
Сървър: „Съжалявам, но не изглеждате като човешко същество. Блокиран!"
TLS пръстовият отпечатък работи под слоя на приложението на OSI модела. Това означава, че не можете просто да настроите вашия TLS отпечатък с няколко реда код. 🚫 💻 🚫
За да подправите TLS пръстови отпечатъци, трябва да размените TLS конфигурациите на вашия HTTP клиент с тези на истински браузър. уловката? Не всички HTTP клиенти ви позволяват да правите това!
Това е мястото, където инструменти като влизат в игра. Тази специална компилация на cURL е проектирана да имитира TLS настройките на браузъра, като ви помага да симулирате браузър от командния ред!
Защо Headless Browser може също да не е решение
Сега може би си мислите: „Е, ако HTTP клиентите дават „подобни на бот“ TLS отпечатъци, защо просто не използвате браузър за изтриване?“
Идеята е да се използва инструмент за да се изпълняват конкретни задачи на уеб страница с браузър без глава.
Независимо дали браузърът работи в режим с глава или без глава, той все още използва същите основни TLS библиотеки. Това е добра новина, защото означава, че браузърите без глава генерират „човешки“ TLS отпечатък! 🎉
Това е решението, нали? Не наистина… 🫤
Ето го кикъра: браузърите без глава идват с други конфигурации, които крещят: „Аз съм бот!“ 🤖
Разбира се, бихте могли да опитате да скриете това със стелт плъгин в Puppeteer Extra , но усъвършенстваните анти-бот системи все още могат да надушат браузъри без глава чрез предизвикателства на JavaScript и пръстови отпечатъци на браузъра.
Така че, да, браузърите без глава също не са вашето безупречно бягство пред анти-ботовете. 😬
Как наистина да заобиколите TLS Fingerprinting
TLS проверката на пръстови отпечатъци е само една от многото усъвършенствани тактики за защита от ботове, които прилагат сложни решения против изстъргване. 🛡️
За да оставите зад гърба си главоболията от TLS пръстови отпечатъци и други досадни блокове, имате нужда от решение за изтриване от следващо ниво, което осигурява:
Надеждни TLS пръстови отпечатъци
Неограничена мащабируемост
Суперсили за решаване на CAPTCHA
Вградено IP ротиране чрез 72-милионна IP прокси мрежа
Автоматични повторни опити
Възможности за изобразяване на JavaScript
Това са някои от многото функции, предлагани от на Bright Data — цялостно решение за облачен браузър за ефикасно и ефективно изтриване на мрежата.
Този продукт се интегрира безпроблемно с любимите ви инструменти за автоматизация на браузъра, включително Playwright, Selenium и Puppeteer. ✨
Просто настройте логиката за автоматизация, стартирайте своя скрипт и оставете API на Scraping Browser да се справи с мръсната работа. Забравете за блоковете и се върнете към това, което има значение - изстъргване с пълна скорост! ⚡️
Не е нужно да взаимодействате със страницата? Опитайте на Bright Data!
Последни мисли
Сега най-накрая знаете защо работата на ниво приложение не е достатъчна, за да избегнете всички блокове. TLS библиотеката, която вашият HTTP клиент използва, също играе голяма роля. TLS пръстови отпечатъци? Вече не е мистерия – разгадали сте я и знаете как да се справите с нея.
Търсите начин да стържете, без да удряте блокове? Не търсете повече от пакета от инструменти на ! Присъединете се към мисията да направите интернет достъпен за всички – дори чрез автоматизирани HTTP заявки. 🌐
До следващия път, продължавайте да сърфирате свободно в мрежата!