我遇到了一个最令人不安的问题。首先,我有一个运行nmap的文件,并使用argparse获取测试的选项。从正在处理的脚本中,我正在使用subprocess.call来使用适当的选项运行此nmap脚本。我在正确的目录中,正在尝试使用此命令调用其他nmap脚本
在这种情况下,hosts = scanme.nmap.org, expected = sample\scanme.nmap.org.xml,
custom_args = '-sS '
subprocess.call(['python', 'NmapProject\run_nmap.py',
'-e', expected, '-cA', custom_args, hosts])
产生以下错误
File "NmapProject\run_nmap.py", line 215, in main
host_data.expected_dict = _expected_ports_to_dict(ET.parse(exp_path), host_data)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 1182, in parse
tree.parse(source, parser)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 647, in parse
source = open(source, "rb")
IOError: [Errno 2] No such file or directory: 'sample\\scanme.nmap.org.xml\\scanme.nmap.org.xml'
对于scanme.nmap.org.xml为什么要追加到“ sample \ scanme.nmap.org.xml”的原因,有人有什么线索吗?单独运行run_nmap.py脚本可以正常工作。我真的对为什么会这样感到慌乱。我将不胜感激任何帮助。