Have you searched if there an existing feature request for this?
Feature description
Problem
The Cloudflare solver currently relies on English text such as <title>Just a moment...</title> and Verifying you are human. to determine whether a challenge is active or solved.
On localized Cloudflare pages—for example, French pages using <title>Un instant…</title>—the solver may incorrectly assume the challenge is solved before clicking the checkbox. The returned response then still contains the Cloudflare challenge page.
Proposed improvement
Make Cloudflare solving language-independent by:
- Using the existing Cloudflare challenge detector instead of translated page text.
- Locating non-embedded Turnstile widgets through the stable
input[name="cf-turnstile-response"] element.
- Clicking the widget using its parent container’s bounding box.
- Applying the behavior to both synchronous and asynchronous stealth sessions.
- Preserving existing embedded Turnstile behavior.
- Adding a regression test using a localized challenge page.
Expected behavior
solve_cloudflare=True should detect, click, and wait for Cloudflare challenges correctly regardless of the page language.
Have you searched if there an existing feature request for this?
Feature description
Problem
The Cloudflare solver currently relies on English text such as
<title>Just a moment...</title>andVerifying you are human.to determine whether a challenge is active or solved.On localized Cloudflare pages—for example, French pages using
<title>Un instant…</title>—the solver may incorrectly assume the challenge is solved before clicking the checkbox. The returned response then still contains the Cloudflare challenge page.Proposed improvement
Make Cloudflare solving language-independent by:
input[name="cf-turnstile-response"]element.Expected behavior
solve_cloudflare=Trueshould detect, click, and wait for Cloudflare challenges correctly regardless of the page language.