jupyter-notebook - 在 Jupyter 中,如何判断您使用的是哪个浏览器?

标签 jupyter-notebook jupyter altair

在我的 Jupyter 笔记本中,我需要知道我是在 Chrome 还是 Firefox 中运行,因为在 Altair 中保存图形的代码根据浏览器的不同而不同 ( https://altair-viz.github.io/user_guide/saving_charts.html )。

我该怎么做?

最佳答案

Jupyter 内核(即 Python 后端)没有有关与其连接的前端的直接信息。但您可以使用系统工具来尝试推断哪些浏览器进程正在运行。例如,psutil模块允许您列出正在运行的进程。我当前打开了 Chrome 和 Safari 浏览器,得到以下结果:

>>> import psutil
>>> 'Google Chrome' in (p.name() for p in psutil.process_iter())            
True
>>> 'Firefox' in (p.name() for p in psutil.process_iter())                  
False
>>> 'Safari' in (p.name() for p in psutil.process_iter())                   
True

一些注意事项:

  • 进程名称可能因操作系统而异:我会检查跨平台一致工作是否很重要。
  • 这不会告诉您用户是否正在使用此特定前端来查看 Jupyter 笔记本,而是会告诉您该名称的进程是否正在运行。
  • 要保存 Altair 图表,请注意,仅浏览器是不够的:您还需要用户为 Chrome 安装 chromedriver,或为 Firefox 安装 geckodriver。检测是否安装了这些驱动程序可能比检测当前运行的浏览器更好。请参阅Saving Charts了解更多信息。

关于jupyter-notebook - 在 Jupyter 中,如何判断您使用的是哪个浏览器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59459747/

相关文章:

python - 基于 Altair 中的 alt.Color 字段排序

python-3.x - 无法在加州住房数据集上执行 sklearn.naive_bayes GaussianNB

hyperlink - 跨越多个 Jupyter 笔记本的目录

python - 如何访问我之前保存在 IDLE 和/或 Jupyter 中的 .py 文件?

docker - 在 Docker 中运行 Raku 笔记本

python - Altair:提取和显示回归系数

python-3.x - Altair 有 slider "play button"吗?

python - 如何在 ipynb 文件中连接到远程内核?

python - Jupyter conda 异常 GET/api/kernelspecs 两个默认环境

jupyter-notebook - 将新代码导入 Jupyter Lab