diff --git a/dist/controllers/SCController.js b/dist/controllers/SCController.js index 89d3ccd..6c7e281 100644 --- a/dist/controllers/SCController.js +++ b/dist/controllers/SCController.js @@ -56,7 +56,7 @@ class SCController { this.scrap = async (placa, renavam, twocaptchaapikey) => { puppeteer_extra_1.default.use((0, puppeteer_extra_plugin_stealth_1.default)()); const browser = await puppeteer_extra_1.default.launch({ - headless: process.env.NODE_ENV === 'production' ? true : false, + headless: process.env.NODE_ENV === 'production' ? 'new' : false, slowMo: process.env.NODE_ENV === 'production' ? 0 : 50, timeout: 10000, args: [ @@ -75,7 +75,7 @@ class SCController { ] }); const page = await browser.newPage(); - const userAgent = new user_agents_1.default({ deviceCategory: 'desktop' }).toString(); + const userAgent = new user_agents_1.default({ deviceCategory: 'desktop', platform: 'Win32', vendor: 'Google Inc.', viewportHeight: 1080, viewportWidth: 1920 }).toString(); console.log(userAgent); // Configurar User-Agent e viewport await page.setUserAgent(userAgent); @@ -116,7 +116,7 @@ class SCController { } if (html.includes(textCaptchaInvalid)) { await pageReload.close(); - return { placa, renavam, captchaToken, multas: [], message: 'Problema de acesso a página. Recaptcha inválido. Consulte novamente' }; + return { placa, renavam, multas: [], message: 'Problema de acesso a página. Recaptcha inválido. Consulte novamente' }; } //new page with captcha solver await pageReload.waitForSelector('table[bgcolor="white"]', { timeout: 10000 }); diff --git a/package-lock.json b/package-lock.json index 0bb9ddf..7b587ee 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,6 +24,7 @@ "link-module-alias": "^1.2.0", "puppeteer": "^21.2.1", "puppeteer-extra": "^3.3.6", + "puppeteer-extra-plugin-recaptcha": "^3.6.8", "puppeteer-extra-plugin-stealth": "^2.11.2", "user-agents": "^1.0.1444" }, @@ -2968,6 +2969,31 @@ } } }, + "node_modules/puppeteer-extra-plugin-recaptcha": { + "version": "3.6.8", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-recaptcha/-/puppeteer-extra-plugin-recaptcha-3.6.8.tgz", + "integrity": "sha512-AY2HG1ZFlSi4xs+Hy84LtRJ95DIfnbjR3Az64dJGVW8gr/hBAGEWRlXTMzea7YOmxO3Nc8Ak3CcUgjgp1gIu1w==", + "dependencies": { + "debug": "^4.1.1", + "merge-deep": "^3.0.2", + "puppeteer-extra-plugin": "^3.2.3" + }, + "engines": { + "node": ">=9.11.2" + }, + "peerDependencies": { + "playwright-extra": "*", + "puppeteer-extra": "*" + }, + "peerDependenciesMeta": { + "playwright-extra": { + "optional": true + }, + "puppeteer-extra": { + "optional": true + } + } + }, "node_modules/puppeteer-extra-plugin-stealth": { "version": "2.11.2", "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.11.2.tgz", @@ -5929,6 +5955,16 @@ "merge-deep": "^3.0.1" } }, + "puppeteer-extra-plugin-recaptcha": { + "version": "3.6.8", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-recaptcha/-/puppeteer-extra-plugin-recaptcha-3.6.8.tgz", + "integrity": "sha512-AY2HG1ZFlSi4xs+Hy84LtRJ95DIfnbjR3Az64dJGVW8gr/hBAGEWRlXTMzea7YOmxO3Nc8Ak3CcUgjgp1gIu1w==", + "requires": { + "debug": "^4.1.1", + "merge-deep": "^3.0.2", + "puppeteer-extra-plugin": "^3.2.3" + } + }, "puppeteer-extra-plugin-stealth": { "version": "2.11.2", "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.11.2.tgz", diff --git a/package.json b/package.json index 14b1bbb..c0e1e4b 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,7 @@ "link-module-alias": "^1.2.0", "puppeteer": "^21.2.1", "puppeteer-extra": "^3.3.6", + "puppeteer-extra-plugin-recaptcha": "^3.6.8", "puppeteer-extra-plugin-stealth": "^2.11.2", "user-agents": "^1.0.1444" }, diff --git a/src/controllers/SCController.ts b/src/controllers/SCController.ts index 7f51b09..e7bf6a8 100644 --- a/src/controllers/SCController.ts +++ b/src/controllers/SCController.ts @@ -47,7 +47,7 @@ class SCController { puppeteer.use(StealthPlugin()); const browser = await puppeteer.launch({ - headless: process.env.NODE_ENV === 'production' ? true: false, + headless: process.env.NODE_ENV === 'production' ? 'new' : false, slowMo: process.env.NODE_ENV === 'production' ? 0 : 50, timeout: 10000, args: [ @@ -68,7 +68,8 @@ class SCController { const page = await browser.newPage(); - const userAgent = new useragent({ deviceCategory: 'desktop' }).toString(); + const userAgent = new useragent({ deviceCategory: 'desktop', platform: 'Win32', vendor: 'Google Inc.', viewportHeight: 1080, viewportWidth: 1920 }).toString(); + console.log(userAgent); // Configurar User-Agent e viewport @@ -125,7 +126,7 @@ class SCController { if (html.includes(textCaptchaInvalid)) { await pageReload.close(); - return { placa, renavam, captchaToken, multas: [], message: 'Problema de acesso a página. Recaptcha inválido. Consulte novamente' }; + return { placa, renavam, multas: [], message: 'Problema de acesso a página. Recaptcha inválido. Consulte novamente' }; } //new page with captcha solver diff --git a/yarn.lock b/yarn.lock index ca6225c..cf3219c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1435,7 +1435,7 @@ "resolved" "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" "version" "0.3.0" -"merge-deep@^3.0.1": +"merge-deep@^3.0.1", "merge-deep@^3.0.2": "integrity" "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==" "resolved" "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz" "version" "3.0.3" @@ -1753,6 +1753,15 @@ "devtools-protocol" "0.0.1159816" "ws" "8.14.1" +"puppeteer-extra-plugin-recaptcha@^3.6.8": + "integrity" "sha512-AY2HG1ZFlSi4xs+Hy84LtRJ95DIfnbjR3Az64dJGVW8gr/hBAGEWRlXTMzea7YOmxO3Nc8Ak3CcUgjgp1gIu1w==" + "resolved" "https://registry.npmjs.org/puppeteer-extra-plugin-recaptcha/-/puppeteer-extra-plugin-recaptcha-3.6.8.tgz" + "version" "3.6.8" + dependencies: + "debug" "^4.1.1" + "merge-deep" "^3.0.2" + "puppeteer-extra-plugin" "^3.2.3" + "puppeteer-extra-plugin-stealth@^2.11.2": "integrity" "sha512-bUemM5XmTj9i2ZerBzsk2AN5is0wHMNE6K0hXBzBXOzP5m5G3Wl0RHhiqKeHToe/uIH8AoZiGhc1tCkLZQPKTQ==" "resolved" "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.11.2.tgz"