当使用pyppeteer报出如下错误时pyppeteer.errors.BrowserError: Browser closed unexpectedly

问题:

安装好pyppeteer,初次运行时可能会报如下错误

pyppeteer.errors.BrowserError: Browser closed unexpectedly:
[0924/153706.301300:ERROR:zygote_host_impl_linux.cc(89)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180

原因:

pyppeteer需要在没有沙盒arg的情况下运行

解决办法:

在middlewares.py中找到我们自定义的middlewares,并找到getbrowser方法,将self.browser = await pyppeteer.launch()改为self.browser = await pyppeteer.launch(options={'args': ['--no-sandbox']}) 问题即可解决

async def getbrowser(self):
      # self.browser = await pyppeteer.launch()
      self.browser = await pyppeteer.launch(options={'args': ['--no-sandbox']})
      self.page = await self.browser.newPage()
      # return await pyppeteer.launch()

完毕!

发布了131 篇原创文章 · 获赞 211 · 访问量 27万+

猜你喜欢

转载自blog.csdn.net/qq_26870933/article/details/101288399