在 Jupyter 的 Python 内核中设置代理变量
配置 Python 内核的环境,并区分 IPython 启动文件与 Jupyter 服务器配置。
笔记本中的 Python 代码在所选内核中运行。请在 HTTP 客户端使用之前,于该进程中设置代理变量。对于采用常规环境处理的 Requests,设置单元格可以包含:
import os
os.environ["http_proxy"] = "http://proxy.example.net:8080"
os.environ["https_proxy"] = "http://proxy.example.net:8080"
代理 URL 在两处赋值中都描述的是一个 HTTP 中间人。不要仅仅因为目标网站使用 HTTPS 就更改它的协议。对于客户端没有代理账户的、获准的公开 Python 请求,HTTP 代理列表中的一条 HTTP 条目可以提供这些值。
在反复使用的 IPython 会话中,启动脚本属于所选配置文件的启动目录,通常是 ~/.ipython/profile_default/startup/。这些文件在构建 IPython shell 时执行,因此修改后需要新的内核才能重新运行。Jupyter 的服务器配置目录用途不同。
内核规范也可以为新启动的内核提供额外的环境值。托管或远程内核可能有自己的启动环境;请检查所选内核,而不要假定它与打开浏览器的 shell 共享环境。
如果问题是打开本地笔记本页面本身,请检查浏览器的 localhost 绕过策略。感知代理的 Python 下载与浏览器到 Jupyter 服务器的连接是两种不同的请求。嵌入在 IFrame 中的网页同样 使用浏览器的路由。