首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyppeteer在使用pyppeteer.errors.NetworkError 20秒后崩溃

Pyppeteer在使用pyppeteer.errors.NetworkError 20秒后崩溃
EN

Stack Overflow用户
提问于 2019-08-06 15:59:35
回答 1查看 356关注 0票数 1

在使用pyppeteer控制铬期间,我在工作大约20秒后收到一个错误:

代码语言:javascript
复制
pyppeteer.errors.NetworkError: Protocol Error (Runtime.callFunctionOn): Session closed. Most likely the page has been closed.

正如here所描述的,该问题可能是由python websockets>=7包的实现和它在pyppeteer中的使用引起的。

EN

回答 1

Stack Overflow用户

发布于 2019-08-06 15:59:35

有3种解决方案可以防止与Chromium断开连接:

-为代码打补丁,如 (首选)

在运行任何其他Pyppeteer命令之前运行代码段

代码语言:javascript
复制
def patch_pyppeteer():
    import pyppeteer.connection
    original_method = pyppeteer.connection.websockets.client.connect

    def new_method(*args, **kwargs):
        kwargs['ping_interval'] = None
        kwargs['ping_timeout'] = None
        return original_method(*args, **kwargs)

    pyppeteer.connection.websockets.client.connect = new_method

patch_pyppeteer()

-更改

websockets包降级为websockets-6.0,例如通过pip3 install websockets==6.0 --force-reinstall (在您的虚拟环境中)

-按照此pull request中的描述更改代码库,希望它很快就会合并。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57371446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档