pyppeteer.errors.BrowserError:浏览器意外关闭

时间:2019-07-26 10:15:27

标签: pyppeteer

今天,当我运行代码时,我学习了一个名为pyppeteer的库

import asyncio
from pyppeteer import launch


async def main():
    browser = await launch(options={'devtools': True, 'headless': False})
    page = await browser.newPage()
    await page.goto('http://example.com')
    await page.screenshot({'path': 'baidu.png'})
    await browser.close()


asyncio.get_event_loop().run_until_complete(main())

我知道了

pyppeteer.errors.BrowserError: Browser closed unexpectedly:

4 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

我也一样,当我尝试从终端启动Chrome时,我注意到它需要在没有沙箱arg的情况下运行,因此只需添加它,您的代码就会起作用:

browser=await launch(options={'args': ['--no-sandbox']})

答案 2 :(得分:0)

我认为我们需要安装chrome的驱动程序。

sudo apt-get install chromium-chromedriver

那是我正在解决的问题

答案 3 :(得分:0)

要确切了解您可以在python3 cmd上运行这两个命令的原因:

from pyppeteer.launcher import Launcher
' '.join(Launcher().cmd)

并查看结果。

但是主要是因为您以root用户身份运行python脚本。您要么需要添加“ --no-sandbox”配置,要么仅以另​​一个用户(任何用户而不是root用户)的身份运行脚本。