Compare commits

...

2 Commits

Author SHA1 Message Date
ngosang
436831edb8 Bump version 2.2.8 2022-09-17 23:55:36 +02:00
ngosang
b17a3a369b Remove 30 s delay and clean legacy code 2022-09-17 23:48:39 +02:00
3 changed files with 2 additions and 32 deletions

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "flaresolverr",
"version": "2.2.7",
"version": "2.2.8",
"lockfileVersion": 2,
"requires": true,
"packages": {

View File

@@ -1,6 +1,6 @@
{
"name": "flaresolverr",
"version": "2.2.7",
"version": "2.2.8",
"description": "Proxy server to bypass Cloudflare protection.",
"scripts": {
"install": "node install.js",

View File

@@ -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')