This commit is contained in:
spiduler
2020-10-25 03:59:46 +09:00
parent 1060e9df7b
commit 1f88616cf5

View File

@@ -16,7 +16,7 @@ class SeleniumBrowser {
this.capabilities = Capabilities.chrome()
this.sleep = m => new Promise(r => setTimeout(r, m))
this.createPool()
setInterval(() => this.reCreatePool(), 1000 * 60 * 3)
// setInterval(() => this.reCreatePool(), 1000 * 60 * 3)
}
reCreatePool() {
@@ -92,20 +92,20 @@ class SeleniumBrowser {
let uri = params.uri
logger.info('URL %s', uri)
if (uri.indexOf('://') > 3) {
if (this.pool) {
return this.pool.acquire()
.then(async driver => {
let html = await driver.get(uri)
.then(() => driver.findElement(By.css('body')))
.then(body => body.getAttribute('innerHTML'))
let htmlPromise = this.isCaptchaPage(html) ? this.resolveCaptcha(driver) : this.getHtml(driver, html, params)
html = await htmlPromise
this.pool.destroy(driver)
return html
})
}else {
throw new Error('Pool is not ready')
}
// if (this.pool) {
return this.pool.acquire()
.then(async driver => {
let html = await driver.get(uri)
.then(() => driver.findElement(By.css('body')))
.then(body => body.getAttribute('innerHTML'))
let htmlPromise = this.isCaptchaPage(html) ? this.resolveCaptcha(driver) : this.getHtml(driver, html, params)
html = await htmlPromise
this.pool.destroy(driver)
return html
})
// }else {
// throw new Error('Pool is not ready')
// }
} else {
throw new Error('Invalid URI - ' + uri)
}