gpt4 book ai didi

python - Pyppeteer 浏览器在 heroku 中意外关闭

转载 作者:行者123 更新时间:2023-12-05 02:54:28 27 4
gpt4 key购买 nike

我最近在 heroku 中部署了一个应用程序。它使用 python pyppeteer 包。我在 repl.it 上测试时没有遇到任何问题。但不幸的是,在 heroku 中,浏览器不断崩溃。

我使用 requirement.txt 来安装 pyppeteer 包。我还尝试使用 apt heroku buildpack 安装 pupeteer 所需的要求,以便按照 here 工作。

我的程序:

async def mainer(link, path, is_image):
browser = await launch(args=['--no-sandbox'])
page = await browser.newPage()
await page.goto(link)
if is_image:
await page.screenshot({'path': f'{path}', 'fullPage': True, 'type': 'png'})
else:
await page.pdf({'path': f'{path}'})
await browser.close()

这是来自 heroku 的完整回溯错误:

2020-05-14T19:39:50.115643+00:00 app[worker.1]:     await handler.callback(self.client, *args)
2020-05-14T19:39:50.115644+00:00 app[worker.1]: File "/app/plugins/downloader.py", line 61, in cb_
2020-05-14T19:39:50.115645+00:00 app[worker.1]: await mainer(url,file,mode)
2020-05-14T19:39:50.115645+00:00 app[worker.1]: File "/app/plugins/downloader.py", line 13, in mainer
2020-05-14T19:39:50.115646+00:00 app[worker.1]: browser = await launch(args=['--no-sandbox'])
2020-05-14T19:39:50.115646+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.7/site-packages/pyppeteer/launcher.py", line 305, in launch
2020-05-14T19:39:50.115647+00:00 app[worker.1]: return await Launcher(options, **kwargs).launch()
2020-05-14T19:39:50.115648+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.7/site-packages/pyppeteer/launcher.py", line 166, in launch
2020-05-14T19:39:50.115648+00:00 app[worker.1]: self.browserWSEndpoint = get_ws_endpoint(self.url)
2020-05-14T19:39:50.115648+00:00 app[worker.1]: File "/app/.heroku/python/lib/python3.7/site-packages/pyppeteer/launcher.py", line 225, in get_ws_endpoint
2020-05-14T19:39:50.115649+00:00 app[worker.1]: raise BrowserError('Browser closed unexpectedly:\n')
2020-05-14T19:39:50.115649+00:00 app[worker.1]: pyppeteer.errors.BrowserError: Browser closed unexpectedly:
2020-05-14T19:39:50.115650+00:00 app[worker.1]:

最佳答案

如果我们关心使用 buildpack由 Heroku 提供,将有一个名为 GOOGLE_CHROME_SHIM 的环境变量.我们可以使用此变量作为 pyppeteer.launch() 的参数或 webdriver.Chrome()

关于python - Pyppeteer 浏览器在 heroku 中意外关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61806240/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com