From 6e6dcbf6d666920d09ff781b904efd166a8909e4 Mon Sep 17 00:00:00 2001 From: spiduler Date: Wed, 21 Oct 2020 17:18:00 +0900 Subject: [PATCH] sddsf --- src/component/SeleniumBrowser.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/component/SeleniumBrowser.js b/src/component/SeleniumBrowser.js index 72764e9..c297f46 100644 --- a/src/component/SeleniumBrowser.js +++ b/src/component/SeleniumBrowser.js @@ -40,7 +40,6 @@ class SeleniumBrowser { async request(params) { let uri = params.uri - let waitElement = params.waitElement if (this.isRecaptchaReseponseEmpty) { return '' } else { @@ -50,7 +49,7 @@ class SeleniumBrowser { return driver.get(uri) .then(() => driver.findElement(By.css('body'))) .then(body => body.getAttribute('innerHTML')) - .then(html => this.getHtml(driver, html)) + .then(html => this.getHtml(driver, html, params)) }) } else { logger.info('URL %s is not valid', uri) @@ -59,7 +58,7 @@ class SeleniumBrowser { } } - async getHtml(driver, html) { + async getHtml(driver, html, params) { if (html.indexOf('grecaptcha') > -1 || html.indexOf('www.google.com/recaptcha/api2/anchor') > -1) { this.isRecaptchaReseponseEmpty = true let iframeSrc = await driver.findElement(By.css('#grecaptcha iframe')).getAttribute('src') @@ -105,8 +104,14 @@ class SeleniumBrowser { }) return '' } else { - this.pool.release(driver) - return html + return driver.get(params.uri) + .then(() => driver.wait(until.elementLocated(By.css(params.waitElement)))) + .then(() => driver.findElement(By.css('body'))) + .then(body => body.getAttribute('innerHTML')) + .then(html => { + this.pool.release(driver) + return html + }) } }