我正在尝试编写一个 python 脚本来解析一个 csv 文件(results.csv),该文件采用其中列出的主机名查找 eac 主机名的 IP 地址,并将此数据附加到新列中的 csv 文件中。
我已经做了一些搜索并且遇到了一些问题。另外我必须强调,我对 Python 非常陌生,这是我正在做的事情,以增加我的知识。
我在 OS X 上使用 python 2.7.x,我的代码如下:
#!/usr/bin/python
import socket
import csvkit
with open('results.csv', 'rb') as infile:
with open('output.csv', 'wb') as outfile:
writer = csvkit.writer(outfile)
for row in csvkit.reader(infile):
IP = socket.gethostname(row)
writer.writerow(row+[IP])
当我在 PyCharm 中运行它时,我收到以下错误:
/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/xxxxxx/PycharmProjects/typosquating/IP_lookup.py Traceback(最近一次调用最后):文件“/Users/xxxxxx/PycharmProjects/typosquating /IP_lookup.py",第 10 行,在 IP = socket.gethostname(row) TypeError: gethostname() 不接受任何参数(1 个给定)
进程以退出代码 1 结束
谁能阐明我在做什么?我可以以与上述相同的方式在另一个脚本上使用 socket.gethostname() 来检查 results.csv 文件的内容并在屏幕上输出每个主机名的相关 IP,但这种用法似乎失败了。
谢谢你的帮助。