0
使用Python libnmap模塊調用get_host_byid,我有這樣的Python代碼:從libnmap返回「無」,而不是一個宿主對象
def DiffScan(Old, New):
Added = Old.diff(New).added()
for i in Added:
anIP = i.split('::')[1]
print "IP for lookup is " + anIP + " of " + str(type(anIP))
anewhost = New.get_host_byid(anIP)
pprint.pprint(anewhost)
當我調用這個函數,我得到的輸出:
IP for lookup is X.X.X.X of <type 'str'>
None
IP for lookup is Y.Y.Y.Y of <type 'str'>
None
我意料的是,而不是「無」,我會得到這樣的:
IP for lookup is Z.Z.Z.Z of <type 'str'>
NmapHost: [Z.Z.Z.Z() - up]
我不確定爲什麼致電.get_host_byid()
正在返回None而不是NMapHost
對象。也許我的anIP
字符串有問題,但我找不到錯誤。
我已經做了使用.get_host_byid一些實驗()關閉保存libnmap.objects.report對象。我正在調用帶有我知道在報告中的文字IP地址的函數。有些時候我得到一個NmapHost對象,有時我會回到「無」。根據我使用的數據,我應該每次都得到一個NMapHost對象。報告所依據的掃描結果超過了20MB。可能會有一個變量太大的問題? – Rudi