我需要利用python的mitmproxy。我已成功安装它。然而,当我在我的终端上运行mitmproxy命令它给我像下面的堆栈跟踪:在Mac上运行MITM代理
File "/usr/local/bin/mitmproxy", line 9, in load_entry_point('mitmproxy==0.13', 'console_scripts','mitmproxy'()
File "/Library/Python/2.7/site-packages/pkg_resources/init.py", line 558, in load_entry_pointreturn get_distribution(dist).load_entry_point(group, name)
File "/Library/Python/2.7/site-packages/pkg_resources/init.py", line 2682, in load_entry_point return ep.load()
File "/Library/Python/2.7/site-packages/pkg_resources/init.py", line 2355, in load return self.resolve()
File "/Library/Python/2.7/site-packages/pkg_resources/init.py", line 2361, in resolve module = import(self.module_name, fromlist=['name'], level=0)
File "/Library/Python/2.7/site-packages/libmproxy/main.py", line 7, in from . import version, cmdline
File "/Library/Python/2.7/site-packages/libmproxy/cmdline.py", line 5, in from netlib import http
File "/Library/Python/2.7/site-packages/netlib/http.py", line 7, in from . import odict, utils, tcp, http_status
File "/Library/Python/2.7/site-packages/netlib/tcp.py", line 26, in 'TLSv1.2': SSL.TLSv1_2_METHOD, AttributeError: 'module' object has no attribute 'TLSv1_2_METHOD'
我试图通过一些谷歌搜索调试的问题,看起来像我需要升级我的pyOpenSSL。
要知道我PyOpen SSL我没有在Python提示符下的当前版本,并得到了ouptut如下图所示为0.13:
>>> import OpenSSL
>>> print OpenSSL.__version__
0.13
所以我试着用下面的升级我pyOpenSSL:
sudo pip install --upgrade pyOpenSSL
ANS成功这样做,因为当我再次运行上述我接收到在输出的第一行如下:
Requirement already up-to-date: pyOpenSSL in /Library/Python/2.7/site-packages
只是为了交叉验证我去了上面的路径,发现PyOpenSSL目录为PyOpenSSL-0.15.1.dist-info。所以我猜PyOpenSSL实际上已升级到最新版本。
但是,当我在Python提示符下再次运行下面的代码时,我再次收到版本为0.13。理想情况下,我期待它现在提供更新版本。
>>> import OpenSSL
>>> print OpenSSL.__version__
0.13
有些博客提示,如果我安装了virtualevn,它可能会干扰上述情况。所以我卸载virtualenv以及使用
sudo pip uninstall virtualenv
我仍然无法得到mitmproxy运行。当我运行mitmproxy时,我仍然得到与上面相同的错误。
请让我知道我缺少什么以及如何让mitmproxy运行。
嘿,它也没有工作后这也。名称错误 –