Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python nmap和print(nm.csv())帮助需要打印到csv.file_Python_Csv_Nmap - Fatal编程技术网

Python nmap和print(nm.csv())帮助需要打印到csv.file

Python nmap和print(nm.csv())帮助需要打印到csv.file,python,csv,nmap,Python,Csv,Nmap,我需要你的帮助与nmap脚本和打印输出到csv文件。 当我运行脚本并使用print(nm.csv())完成它时,显示了以下结果,这是我首先想要的结果: host;hostname;hostname_type;protocol;port;name;state;product;extrainfo;reason;version;conf;cpe 82.214.228.176;176.228.214.82.in-addr.arpa;PTR;tcp;21;ftp;open;;;syn-ack;;3; 82

我需要你的帮助与nmap脚本和打印输出到csv文件。 当我运行脚本并使用
print(nm.csv())
完成它时,显示了以下结果,这是我首先想要的结果:

host;hostname;hostname_type;protocol;port;name;state;product;extrainfo;reason;version;conf;cpe
82.214.228.176;176.228.214.82.in-addr.arpa;PTR;tcp;21;ftp;open;;;syn-ack;;3;
82.214.228.176;176.228.214.82.in-addr.arpa;PTR;tcp;22;ssh;open;;;syn-ack;;3;
82.214.228.176;176.228.214.82.in-addr.arpa;PTR;tcp;53;domain;open;;;syn-ack;;3;
82.214.228.176;176.228.214.82.in-addr.arpa;PTR;tcp;80;http;open;;;syn-ack;;3;
但我的问题是,如何重定向该脚本,或者如何在运行脚本的同一目录或路径中创建csv文件。 提前谢谢

print (nm.csv(),file=open('a.csv','w'))
已编辑

可以使用print_函数从python2中的python3获取print()行为:

from __future__ import print_function

您可以声明这样的函数

def save_csv_data(nm_csv, path='.'):
    with open(path + '/output.csv', 'w') as output:
        output.write(nm_csv)
然后,通过传递参数,可以指定另一个保存文件的路径,或者使用与脚本相同的目录:

if (len(sys.argv) > 1 and sys.argv[1]):
    save_csv_data(nm.csv(), path=sys.argv[1])
else:
    save_csv_data(nm.csv())
编辑:还记得导入系统


我还建议您,如果您决定使用参数,请使用类似的模块。

谢谢Martin!我明白了!:)非常感谢你,马丁@伊万马多列夫:你能给你的问题添加更多的代码吗?也许它能帮你解决问题,谢谢!不客气!如果您认为此解决方案适合您,您可以接受答案!:)@SmartManoj也值得称赞,因为他的解决方案可以有效地将信息打印到文件中。使用该函数应在函数中添加output.close(),否则,连接无法轻松关闭。嘿,Smart,我收到语法错误:文件“test2.py”,第22行打印(nm.csv(),file=open('a.csv','w')^SyntaxError:无效语法