mirror of
https://github.com/FlareSolverr/FlareSolverr.git
synced 2025-06-08 20:45:27 +00:00
Remove 30 s delay and clean legacy code
This commit is contained in:
parent
a74884d0c1
commit
b17a3a369b
@ -18,8 +18,6 @@ const CAPTCHA_SELECTORS: string[] = [
|
||||
'#cf-challenge-hcaptcha-wrapper', '#cf-norobot-container', 'input[name="cf_captcha_kind"]'
|
||||
];
|
||||
|
||||
const delay = (ms: number) => new Promise(resolve => setTimeout(resolve, ms))
|
||||
|
||||
export default async function resolveChallenge(url: string, page: Page, response: HTTPResponse): Promise<HTTPResponse> {
|
||||
|
||||
// look for challenge and return fast if not detected
|
||||
@ -72,34 +70,6 @@ export default async function resolveChallenge(url: string, page: Page, response
|
||||
// captcha detected
|
||||
break
|
||||
}
|
||||
|
||||
// new Cloudflare Challenge #cf-please-wait
|
||||
const displayStyle = await page.evaluate((selector) => {
|
||||
return getComputedStyle(document.querySelector(selector)).getPropertyValue("display");
|
||||
}, selector);
|
||||
if (displayStyle == "none") {
|
||||
// spinner is hidden, could be a captcha or not
|
||||
log.debug('Challenge element is hidden')
|
||||
log.debug("Waiting for 30 secs");
|
||||
await delay(30 * 1000);
|
||||
// wait until redirecting disappears
|
||||
while (true) {
|
||||
try {
|
||||
await page.waitForTimeout(1000)
|
||||
const displayStyle2 = await page.evaluate(() => {
|
||||
return getComputedStyle(document.querySelector('#cf-spinner-redirecting')).getPropertyValue("display");
|
||||
});
|
||||
if (displayStyle2 == "none") {
|
||||
break // hCaptcha detected
|
||||
}
|
||||
} catch (error) {
|
||||
break // redirection completed
|
||||
}
|
||||
}
|
||||
break
|
||||
} else {
|
||||
log.debug('Challenge element is visible')
|
||||
}
|
||||
}
|
||||
log.debug('Found challenge element again')
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user