使用docker创建http代理环境
proxyenv的Python项目详细描述
这是一个python模块,它启动 Squid在Docker中运行的代理 容器,并设置使用此代理处理 来自python代码和外部程序的http请求。这个 目的主要是在需要 HTTP请求。代理既支持http和https,也支持basic 代理授权。
使用现有的HTTP代理< /H2>
如果已经在http_proxy环境变量中设置了代理, 新创建的SQUID代理仍将使用现有的工作。 代理为“缓存对等”。如果不需要,请删除http_proxy 在启动临时代理之前从环境中。
用法
from proxyenv.proxyenv import ProxyFactory proxyfact=ProxyFactory() # Example for using urllib from six.moves.urllib import request with proxyfact() as proxy: opener = request.build_opener(proxy.get_handler) opener.open(url) # Example for starting external program with proxy-related environment # variables from subprocess import check_output with proxyfact(user="johndoe:secret", port=3077) as proxy: check_output(["/usr/bin/wget", url])
请使用proxyenv/proxyenv.py中的main程序作为 其他文件来源。
proxyev脚本
该包还包含控制台脚本proxyenv。
usage: proxyenv [-h] [-p PORT] [-u USER] [-i IMPL] [-s] [-w] [-v] [URL [URL ...]] positional arguments: URL an URL to retrieve optional arguments: -h, --help show this help message and exit -p PORT, --port PORT proxyport to use (default: 3128) -u USER, --user USER proxy user in user:password format -i IMPL, --impl IMPL set implementaton (cmdline or api, default: api) -s, --shell open a shell in new environment -w, --wait wait for input -v, --verbose verbose output