Python问题:ImportError: cannot import name 'gen' from 'tornado' (unknown location)
背景:
使用kali安装子域名收集工具(oneforall)时,安装文档的步骤执行很顺利,但在执行主程序时遇到的如下报错。
RHEL/Centos系统
1、安装git和pip3
sudo yum update
sudo yum install git python3-pip -y2、克隆OneForAll项目
git clone https://gitee.com/shmilylty/OneForAll.git3、安装相关依赖
cd OneForAll/
sudo yum install gcc python3-devel python3-pip -y
sudo python3 -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/
sudo pip3 install uvloop -i https://mirrors.aliyun.com/pypi/simple/
sudo pip3 install --ignore-installed -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
python3 oneforall.py --help
问题描述:
root@kali:~/web/OneForAll# python3 oneforall.py --help Traceback (most recent call last): File "oneforall.py", line 15, in <module> import dbexport File "/root/web/OneForAll/dbexport.py", line 13, in <module> from common import utils File "/root/web/OneForAll/common/utils.py", line 13, in <module> import tenacity File "/usr/local/lib/python3.8/dist-packages/tenacity/__init__.py", line 504, in <module> from tenacity.tornadoweb import TornadoRetrying File "/usr/local/lib/python3.8/dist-packages/tenacity/tornadoweb.py", line 23, in <module> from tornado import gen ImportError: cannot import name 'gen' from 'tornado' (unknown location)
解决方法:
安装较低版本的tornado ,命令如下:
pip install tornado==5.1.1
然后就可以正常使用了
python3 oneforall.py --target example.com run
python3 oneforall.py --targets ./example.txt run
知识要大家一起分享,但带上原文链接是对作者的尊重。