У меня возникли проблемы получить мою голову вокруг этой структуры данных Python:Iterate Python структура данных
data = {'nmap': {'command_line': u'ls',
'scaninfo': {u'tcp': {'method': u'connect',
'services': u'80,443'}},
'scanstats': {'downhosts': u'0',
'elapsed': u'1.18',
'timestr': u'Wed Mar 19 21:37:54 2014',
'totalhosts': u'1',
'uphosts': u'1'}},
'scan': {u'url': {'addresses': {u'ipv6': u'2001:470:0:63::2'},
'hostname': u'abc.net',
'status': {'reason': u'syn-ack',
'state': u'up'},
u'tcp': {80: {'conf': u'3',
'cpe': '',
'extrainfo': '',
'name': u'http',
'product': '',
'reason': u'syn-ack',
'state': u'open',
'version': ''},
443: {'conf': u'3',
'cpe': '',
'extrainfo': '',
'name': u'https',
'product': '',
'reason': u'syn-ack',
'script': {
u'ssl-cert': u'place holder'},
'state': u'open',
'version': ''}},
'vendor': {}
}
}
}
В принципе мне нужно перебрать «ТСР» ключевые ценности и извлекать содержимое «сценария» пункт если он существует.
Это то, что я пробовал:
items = data["scan"]
for item in items['url']['tcp']:
if t["script"] is not None:
print t
Однако я не могу заставить его работать.
Вы перепутали 'item' и' t' btw. – poke