wkeeling / selenium-wire

Extends Selenium's Python bindings to give you the ability to inspect requests made by the browser.
MIT License
1.9k stars 254 forks source link

CloudFlare Detects seleniumwire uc v2, although it doesn't detect the original uc selenium driver #489

Closed deini-synamedia closed 2 years ago

deini-synamedia commented 2 years ago

Tried to run this code on v2 and got CloudFlare's Anti Bot Captcha. When running v1, CloudFlare doesn't detect us but no driver.requests are saved.

 import seleniumwire.undetected_chromedriver.v2 as uc
from seleniumwire import webdriver

options = webdriver.ChromeOptions()
options.headless = False

driver = uc.Chrome(options=options)

driver.get('https://whatismyipaddress.com/')
wkeeling commented 2 years ago

Thanks for raising this. This has been reported before and it's likely caused by TLS fingerprinting. Selenium Wire changes the TLS fingerprint when it captures requests and services such as CloudFlare are able to detect that. Unfortunately there's no solution at the current time but it's being tracked in #215.