之前在网上下了sqlmap这个软件后开始能用,过了几天下了python3之后sqlmap就不能正常用了,每次打开总会出现 sqlmap.py: error: missing a mandatory option (-d, -u, -l, -m, -r, -g, -c, -x, --list-tampers, --wizard, --update, --purge or --dependencies). Use -h for basic and -hh for advanced help这个问题,现在给出解决方法。
首先出现这种问题一般都是你的电脑同时安装了两个python版本,sqlmap支持的是python2版本,而python3优先级高于python2,所以当你运行sqlmap时总会报错,因为它不支持python3。
dos中输入python,如果显示的不是python2的版本信息而是python3的版本信息,那么请打开环境变量对话框,建议在上下的两个path中添加你的电脑里面python2的安装路径,并把其上移的最顶部。之所以要上移,那是因为当你在dos中打开一个程序的时候,系统不光要在当前目录查找程序,而且还要在环境变量中查找。这时要注意的是在环境变量中查找也是具有优先级的,比如你的py2和py3安装路径同时在里面,但是py3在py2的上面,当系统找到这里时首先看到python3的安装路径,然后就直接跳出,不再继续查找了。所以你在dos中输入python还是显示python3的版本信息而不是python2的版本信息。
接下来测试软件是否运行正常,切换到sqlmap目录
输入python sqlmap.py -u http://www.baidu.com/sql1/Less-1/?id=1&uid=3 结果如下,运行正常。