wananzuiqingfeng
Pig_xiaoming
采纳率66.7%
2021-03-02 14:07

Jupyter 环境运行 selenium 程序为什么游览器是挂起状态的?

50
已结题

当我在 Jupyter 环境中运行我的 selenium 程序时,打开的游览器为什么是挂起状态的?

我该如何解决这一问题,使得它能在程序启动时弹出游览器,而不是需要我手动点击。

我想要让其看起来和 Pycharm 环境下运行效果是一样的:

 

  • 点赞
  • 收藏
  • 复制链接分享

2条回答

  • hfcaoguilin infsml 1月前

    如果你了解windows操作系统 窗口机制 这个问题就很简单

    注意以下三个进程:

    jupyter notebook进程、jupyter 客户端浏览器进程、selenium进程

    selenium的父进程实际是后面的jupyter notebook进程,并不是 jupyter 客户端浏览器进程,

    注意 windows窗口的当前焦点  始终是 被  jupyter 客户端浏览器进程  占据的,

    如果  你设法 让  jupyter notebook进程  始终占据焦点,则 selenium 启动后 会立即获得焦点,这是简单方案。

    复杂方案:在 selenium 启动前,调用 win32 api 让 jupyter notebook进程 获得焦点,然后启动 selenium  。

    所有由此可知,最简单办法 是 直接使用ipython

    改用ipython

    点赞 评论 复制链接分享
  • weixin_41908433 知雀的天空 1月前

    去cmd 命令窗口执行jupyter notebook --generate-config  可以找到  Jupyter_notebook_config.py文件

    在该文件中找到以下代码

    #c.NotebookApp.notebook_dir = ''

    添加如下代码

     C:\\Users\\twty\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe替换成自己的chrome安装路径

    #c.NotebookApp.notebook_dir = ''
    import webbrowser
    webbrowser.register('chrome',None,webbrowser.GenericBrowser(u'C:\\Users\\twty\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe'))
    c.NotebookApp.browser = 'chrome'
    
    点赞 评论 复制链接分享

为你推荐