これはどういうことが間違っているのかよくわかりません。文字列として結合されている行をインポートしようとすると、その後、CSVで...うーん....タイプエラー:リストインデックスは、strではなく整数でなければなりません。 CSVにstrsを追加中
import csv
import io
import os
import sys
def putInCSV():
if os.stat("test_attacking_ips_spreadsheet.csv").st_size == 0:
temp = open("test_attacking_ips_spreadsheet.csv", 'wb')
tempwrite = csv.writer(temp)
tempwrite.writerow(["IP Address"]['Hostname']['AS Number']['AS Name']['Net Range']['CC']['Type']['Targets']['Last Seen']['Notes']['FW Block']['Signatures'])
#["IP Address"]['Hostname']['AS Number']['AS Name']['Net Range']['CC']['Type']['Targets']['Last Seen']['Notes']['FW Block']['Signatures']#
temp.close()
Read = open("test_attacking_ips_spreadsheet.csv", 'rb')
Append = open("test_attacking_ips_spreadsheet.csv", 'ab')
reader = csv.reader(Read)
writer = csv.writer(Append)
sweetness = len(list(reader))
fileName = ''.join(sys.argv[1:2])
if fileName == '':
fileName = raw_input('Input the file with extension\n>')
with open(fileName) as f:
for line in f:
line = ''.join(line)
if "|" in line:
findStop = line.index("|")
ASNum = line[:findStop]
if "-" not in ASNum:
ASLine = "AS" + ASNum
else:
ASLine = ''
remainder = line[findStop:]
findStop = remainder.index("|")
ipAdd = remainder[:findStop]
HSTNm = ''
remainder = line[findStop:]
findStop = remainder.index("|")
ASName = remainder[:findStop]
writer.writerow([ipAdd][HSTNm][ASLine][ASName])
putInCSV()
誰もが私のせいを参照することを置きますか?ほとんどの人がapi情報をリンクしているので、私は簡潔な理由を見つけることができませんでしたが、私の研究をバックアップするのに役立つ情報は見つかりませんでした。
tempwrite.writerow(["IP Address"]['Hostname']['AS Number']['AS Name']['Net Range']['CC']['Type']['Targets']['Last Seen']['Notes']['FW Block']['Signatures'])
...
writer.writerow([ipAdd][HSTNm][ASLine][ASName])
リストを定義するための構文は、リスト["IP Address"]
からインデックス'Hostname'
の要素を抽出するl = ["a", "b", "c"]
["IP Address"]['Hostname']
試みであり、あなたのエラーにつながる:
Traceback (most recent call last):
File "C:\Users\user\Documents\bulk_whois\PutInCSV.py", line 46, in <module>
putInCSV()
File "C:\Users\user\Documents\bulk_whois\PutInCSV.py", line 44, in putInCSV
writer.writerow([ipAdd][HSTNm][ASLine][ASName])
TypeError: list indices must be integers, not str
正確なエラーを投稿できますか? –
はエラーを追加しました – GarnetSunset