我有以下代码:
from requests_html import HTMLSession()
session = HTMLSession()
response = session.get(url)
response.html.render() # <- causes error
page_soup = soup(response.html.html, "html.parser")
response.close()
我正试图用JS解析这个网站。独立于我试图呈现的网站,我在Ubuntu上遇到以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/project1/project1_venv/lib/python3.8/site-packages/requests_html.py", line 586, in render
self.browser = self.session.browser # Automatically create a event loop and browser
File "/home/project1/project1_venv/lib/python3.8/site-packages/requests_html.py", line 730, in browser
self._browser = self.loop.run_until_complete(super().browser)
File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
return future.result()
File "/home/project1/project1_venv/lib/python3.8/site-packages/requests_html.py", line 714, in browser
self._browser = await pyppeteer.launch(ignoreHTTPSErrors=not(self.verify), headless=True, args=self.__browser_args)
File "/home/project1/project1_venv/lib/python3.8/site-packages/pyppeteer/launcher.py", line 306, in launch
return await Launcher(options, **kwargs).launch()
File "/home/project1/project1_venv/lib/python3.8/site-packages/pyppeteer/launcher.py", line 167, in launch
self.browserWSEndpoint = get_ws_endpoint(self.url)
File "/home/project1/project1_venv/lib/python3.8/site-packages/pyppeteer/launcher.py", line 226, in get_ws_endpoint
raise BrowserError('Browser closed unexpectedly:\n')
pyppeteer.errors.BrowserError: Browser closed unexpectedly:
当我使用Windows 10在本地计算机上运行相同的代码时,一切正常
在这两种环境中,库的版本相同:
requests-html==0.10.0
但在windows上,我有Python 3.7.2,在Linux服务器上有Python 3.8.6。有什么问题吗?在这两种环境中,我都使用venvs
我已经在Ubuntu上安装了chromium
当我在Ubuntu上显示render()的错误时,我在windows上也面临同样的问题
当我从windows上的代码中删除它时,页面无法正确加载并显示错误
而在ubuntu上工作很好。我认为在ubuntu上不需要包含render()
从代码中删除render(),然后尝试使用它
希望它能起作用
谢谢
我也面临同样的问题。帮助我找到的决议是:https://techoverflow.net/2020/09/29/how-to-fix-pyppeteer-pyppeteer-errors-browsererror-browser-closed-unexpectedly/。我执行了以下命令:
不是的,它没有任何问题
相关问题 更多 >
编程相关推荐