【发布时间】:2021-12-20 22:40:25
【问题描述】:
我在我的电报机器人上使用 puppeteer 从网络上获取内容。 在本地,一切正常,但问题是:
当尝试获取 URL 的 HTML 时,给定的响应不是 HTML 文件,而是包含所有 js 文件的 Web 应用程序。在我的本地机器上 - 我正在获取包含所有所需链接的 HTML 文件。
这是我的代码:
return await puppeteer.launch({
args: ['--no-sandbox', '--disable-setuid-sandbox'],
headless: true,
}).then(async browser => {
const page = await browser.newPage()
page.setJavaScriptEnabled(true)
await page.goto(targetUrl)
await page.waitForTimeout(2000)
const data = await page.$$eval(SELECTORS, (res) => {
return res.map(r => {
return r.getAttribute('ATRR')
})
}) as never as string[]
.......
})
PS -------------- 已经将此 repo 添加到 Heroku:
https://github.com/jontewks/puppeteer-heroku-buildpack
【问题讨论】:
标签: javascript node.js heroku puppeteer telegram