首页 > 解决方案 > 如何使用 python 将代理设置/凭据传递给命令提示符,以便同一 python 代码中的后续命令可以访问互联网?

问题描述

我的 python 代码中的一些命令使用互联网来下载所需的文件。不幸的是,我正在使用代理互联网连接。

我知道这些命令用于在 cmd.exe 中获取 Internet(我通过在 cmd 提示符中键入下面提到的命令手动尝试,然后在相同的情况下访问网络)

set http_proxy=http://username:password@your_proxy:your_port 
set https_proxy=https://username:password@your_proxy:your_port

但是,我无法从 python 代码本身传递这些命令,因此我无需在每次运行代码时手动输入它们。一些链接将使用 http,而其他链接将使用 https。我应该如何在代码中解决这个问题?

我试过了,但没有奏效:

import os
proxy = "set https_proxy=https://username:password@your_proxy:your_port"
os.system(proxy)
import numpy
...........my code........

我在哪里错了,实现我的要求的正确程序是什么?在这种情况下我可以使用 subprocess 吗?

标签: pythonproxyoperating-systemsubprocesscommand-prompt

解决方案


你需要通过系统 ENV :

os.environ["http_proxy"] = "http://username:password@your_proxy:your_port"

推荐阅读