Мне нужно использовать mitmproxy Python. Я успешно установил его. Однако, когда я запускаю команду mitmproxy на своем терминале, она дает мне трассировку стека, как показано ниже:
Файл "/usr/local/bin/mitmproxy", строка 9, в load_entry_point('mitmproxy==0.13', 'console_scripts','mitmproxy'()
Файл "/Library/Python/2.7/site -packages/pkg_resources/init.py", строка 558, в load_entry_pointreturn get_distribution(dist).load_entry_point(group, name)
File "/Library/Python/2.7/site- packages/pkg_resources/init.py", строка 2682, в load_entry_point возвращает ep.load()
File "/Library/Python/2.7/site-packages/pkg_resources/init.py", строка 2355, при загрузке return self.resolve()
File "/Library/Python/2.7/site-packages/pkg_resources/init .py", строка 2361, модуль разрешения = импорт(self.module_name, fromlist=['имя'], уровень=0)
Файл "/Library/Python/2.7/site-packages/libmproxy/main.py", строка 7, из .import version, cmdline
Файл "/Library/Python/2.7/site-packages/libmproxy/ cmdline.py", строка 5, из netlib import http
Файл "/Library/Python/2.7/site-packages/netlib/http.py", строка 7, из . import odict, utils, tcp, http_status
Файл "/Library/Python/2.7/site-packages/netlib/tcp.py", строка 26, в "TLSv1.2": SSL.TLSv1METHOD, AttributeError: Объект «модуль» не имеет атрибута «TLSv1>>> import OpenSSL >>> print OpenSSL.__version__ 0.13
METHOD»>>> import OpenSSL >>> print OpenSSL.__version__ 0.13
Я попытался отладить проблему с помощью поиска в Google и, похоже, мне нужно было обновить pyOpenSSL.
Чтобы узнать текущую версию моего PyOpen SSL, я сделал следующее в командной строке Python и получил вывод, как показано ниже, равный 0,13:
>>> import OpenSSL
>>> print OpenSSL.__version__
0.13
Поэтому я попытался обновить свой pyOpenSSL, используя следующее:
sudo pip установить --обновить pyOpenSSL
и успешно сделал это, так как когда я снова запустил вышеизложенное, я получил следующее в первой строке вывода:
Требование уже обновлено: pyOpenSSL в /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 удалить virtualenv
Я все еще не могу запустить mitmproxy. И когда я запускаю mitmproxy, я все равно получаю ту же ошибку, что и выше.
Пожалуйста, дайте мне знать, что мне не хватает и как запустить mitmproxy.