
Касада анти-ботские методы: сэкономьте деньги с этими решениями с открытым исходным кодом
15 июля 2025 г.Обход анти-ботов является одной из основных болевых точек, с которыми сталкивается профессиональный веб-скребок за свою карьеру. К счастью, рынок предлагает несколько решений для их обхода, но делегирование тяжелой работы всегда поставляется с прикрепленным ценником, который не для каждого кармана.
Как говорится, 'Если вы хотите что -то сделать правильно, сделайте это самостоятельно.«Итак, давайте продолжим серию статей об обходе хорошо известных анти-ботов с помощью инструментов с открытым исходным кодом.
Итак, давайте посмотрим, какие инструменты с открытым исходным кодом мы можем использовать для обхода анти-бота Kasada в 2025 году, сохраняя несколько долларов в наших карманах.
Инструменты с открытым исходным кодом для обхода касады
Как всегда, нам нужно выбрать веб -сайт, на котором можно проверить наши решения. Сегодня это Канада Гус, сайт электронной коммерции знаменитой бренды Outerwear.
Самый простой способ обнаружить, когда веб -сайт использует Kasada, - это просить об этом
В качестве двойной проверки, поскольку данные Wappalyzer могут быть устаревшими, вы можете посетить веб -сайт с открытой вкладкой сети инструментов разработчиков (но сначала отметьте поле «Журнал сохранения»).
Если вы заметите, что веб-сайт сначала возвращает ошибку 429, а затем загружается правильно, это типичное поведение веб-сайта, защищенного KASADA.
Это также подтверждается наличием этого заголовка контроля доступа на следующих вызовах: X-KPSDK-CT, X-KPSDK-R и X-KPSDK-C и X-KPSDK-CT.
Итак, расчет токена достаточно?
Я часто слышу это от людей, пытающихся обойти анти-ботское решение: нам нужно генерировать достоверный токен, чтобы получить разрешение для очистки данных веб-сайта.
Хотя было бы интересно научиться обратить вспять коммерческое решение, такое как Касада, это не лучший подход, если вам скоро понадобятся данные. Это требует времени, и вы должны перезапустить после каждого изменения в анти-ботском программном обеспечении. Несмотря на трудности,
Вместо этого мой предпочтительный подход заключается в создании человеческого запроса, который смешивается с фактическим трафиком веб-сайта и остается незамеченным от толпы.
Конечно, этот подход медленнее, поскольку ему требуется инструмент автоматизации браузера, но он также более этичен, чем бомбардировка целевого сервера сотнями запросов в секунду.
В этой статье мы увидим три различных инструмента с открытым исходным кодом, которые позволят вам обойти Kasada с помощью Playwright и модифицированного браузера.
Стандартный драматург ❌
Прежде чем попробовать более незамеченные инструменты, давайте начнем с простого сценария, используя стандартную версию Playwright и Brave Browser.
from playwright.sync_api import sync_playwright
import time
CHROMIUM_ARGS= [
'--no-sandbox',
'--disable-setuid-sandbox',
'--no-first-run',
'--disable-blink-features=AutomationControlled',
'--start-maximized'
]
with sync_playwright() as p:
browser = p.chromium.launch_persistent_context(user_data_dir='./userdata/',channel='chrome',no_viewport=True,executable_path='/Applications/Brave Browser.app/Contents/MacOS/Brave Browser', headless=False,slow_mo=200, args=CHROMIUM_ARGS,ignore_default_args=["--enable-automation"])
all_pages = browser.pages
page = all_pages[0]
page.goto('https://www.canadagoose.com/', timeout=0)
time.sleep(10)
page.goto('https://www.canadagoose.com/it/it/shop/donna/capispalla/giacche-imbottite/shop-womens-puffers', timeout=0)
time.sleep(10)
browser.close()
Я часто использую храбрых в этих примерах, потому что это браузер, который добавляет некоторый шум к отпечатке пальцев Webgl, хотя он не такой мощный, как настоящий анти-детектирующий браузер.
Тест с треском терпит неудачу, так как мы получаем пустой экран для обоих URL -адресов, еще один отличительный знак Касады.
Patchright ✅
Слегающая версия драматурга - это
Лучшая часть игры?
Вам просто нужно изменить импортный пакет; Скребок такой же, как у драматурга. Я только что добавил прокси и использовал браузер по умолчанию, установленный с библиотекой.
from patchright.sync_api import sync_playwright
import time
import os
proxies = {
'server': 'http://ENDPOINT:PORT',
'username': 'USER',
'password': 'PWD'
}
CHROMIUM_ARGS= [
'--no-first-run',
'--disable-blink-features=AutomationControlled',
'--force-webrtc-ip-handling-policy'
]
with sync_playwright() as p:
browser = p.chromium.launch(headless=False,slow_mo=200, args=CHROMIUM_ARGS,ignore_default_args=["--enable-automation"])
context = browser.new_context(proxy=proxies, ignore_https_errors=True, permissions=['geolocation'])
page = context.new_page()
page.goto('https://www.canadagoose.com/', timeout=0)
time.sleep(10)
page.goto('https://www.canadagoose.com/it/it/shop/donna/capispalla/giacche-imbottite/shop-womens-puffers', timeout=0)
time.sleep(10)
HTML_text = page.content()
print(HTML_text)
browser.close()
Теперь скребок работает как очарование.
Зендривер ✅
Еще один пакет, который я проверил
Я выбрал его вместо Nodriver, потому что это обновляется чаще, и мне было любопытно проверить это.
Он использует протокол разработчика Chrome для взаимодействия с браузером, а не с Webdriver, и Python Async API для ускорения ползания.
import asyncio
import zendriver as zd
import time
proxies = {
'server': 'http://ENDPOINT:PORT',
'username': 'USER',
'password': 'PWD'
}
async def main():
async with await zd.start(browser_executable_path='/Applications/Brave Browser.app/Contents/MacOS/Brave Browser', proxy=proxies) as browser:
await browser.get('https://www.canadagoose.com/')
time.sleep(10)
await browser.get('https://www.canadagoose.com/it/it/shop/donna/capispalla/giacche-imbottite/shop-womens-puffers')
time.sleep(10)
await browser.stop()
if __name__ == "__main__":
asyncio.run(main())
Небольшой сценарий может обойти касаду и показывать нам страницы, не требуя, чтобы мы устанавливали какие -либо конкретные варианты. Отличное открытие!
Камуфкс ✅
И последнее, но не менее важное: одна из самых упомянутых библиотек на этих страницах - это
Это борьба с открытым исходным кодом, управляемый Playwright. Он добавляет важные особенности, такие как человеческое движение мыши и способность создавать реальные отпечатки пальцев.
В этом случае мы просто создали новый отпечаток пальца машины Windows, но не перемещали мышь вокруг страницы, но этого было достаточно, чтобы правильно загрузить запрошенные страницы.
from camoufox.sync_api import Camoufox
import time
import os
proxies = {
'server': 'http://ENDPOINT:PORT',
'username': 'USER',
'password': 'PWD'
}
with Camoufox(humanize=True,os="windows", geoip=True, proxy=proxies) as browser:
page = browser.new_page()
page.goto('https://www.canadagoose.com/', timeout=0)
time.sleep(5)
page.goto('https://www.canadagoose.com/it/it/shop/donna/capispalla/giacche-imbottite/shop-womens-puffers', timeout=0)
time.sleep(5)
HTML_text = page.content()
print(HTML_text)
browser.close()
Окончательные замечания
Сообщество с открытым исходным кодом всегда удивительно и создает такие замечательные инструменты, которые иногда не получают правильной оценки.
Камуфокс является отличным примером продукта, который находится на том же уровне, что и коммерческий.
Какой лучший инструмент с открытым исходным кодом, который вы используете для соскоба? Пожалуйста, напишите это в разделе комментариев!
Статья является частью«Лаборатория»серияПьерлуиджи ВинсгуерраПолем Проверьте егоПодмазочныйСтраница для получения дополнительных знаний о скребке.
Оригинал