Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将mitmproxy连接到我无法控制的另一个代理?_Python_Proxy_Mitmproxy_Libmproxy - Fatal编程技术网

Python 如何将mitmproxy连接到我无法控制的另一个代理?

Python 如何将mitmproxy连接到我无法控制的另一个代理?,python,proxy,mitmproxy,libmproxy,Python,Proxy,Mitmproxy,Libmproxy,这个过程将是浏览器向MITMproxy发送一个请求,然后生成一个请求,该请求将被发送到不受我们控制的目标代理服务器。代理服务器将向MITMproxy发送响应,然后MITMproxy将该响应转发到浏览器 我将如何执行此操作?您可以使用mitmproxy的-F标志来执行此操作,它将代理请求转发到上游服务器。请看以下文档: 如果不想从脚本执行此操作,可以使用get_upstream_server from server.config更改上游服务器,请参见[mitmproxy config]()。例如:

这个过程将是浏览器向MITMproxy发送一个请求,然后生成一个请求,该请求将被发送到不受我们控制的目标代理服务器。代理服务器将向MITMproxy发送响应,然后MITMproxy将该响应转发到浏览器


我将如何执行此操作?

您可以使用mitmproxy的-F标志来执行此操作,它将代理请求转发到上游服务器。请看以下文档:


如果不想从脚本执行此操作,可以使用get_upstream_server from server.config更改上游服务器,请参见[mitmproxy config]()。例如:

self.server.config.get_upstream_server = proxy.ConstUpstreamServerResolver(cmdline.parser_server_spec("http://upstreamserver:port"))

我认为这是
-U
选项:

command-line    -U http://hostname[:port]

来源:

我通过以下几点实现了你的要求。您需要启用上游模式和上游身份验证(如果您有一些代理的用户名/密码):

然后,您可以使用一个简单的
curl
检查它是否正常工作:

curl -x http://localhost:8080 -k https://api.ipify.org/
这将把您的请求转发给mitmproxy,mitmproxy将把请求转发给您的其他代理


希望有帮助

如何将上游服务器与脚本一起使用?供其他人参考,大多数其他答案似乎适用于非常旧的mitmproxy版本。对于任何最新版本(v3+),此
--模式上游:
选项就是它的实现方式。看见
curl -x http://localhost:8080 -k https://api.ipify.org/