Python初心者はフィルタリング.xmlファイルのヘルプが必要です。私はほとんど成功してxml.etree.ElementTreeで試してきました。フィルタxml/nessusはPythonを使ってスキャンしますElementTree
XMLは次のようになります。
<ClientData>
<Report>
<ReportHost>
<ReportItem pluginID="11111">
Ipsum lorem etc leviosa!
</ReportItem>
</ReportHost>
<ReportHost>
<ReportItem pluginID="22222">
Sed ut perspiciatis unde omnis iste
</ReportItem>
</ReportHost>
</Report>
</ClientData>
をReportItem.pluginIDがブラックリスト上のアイテムと一致した場合、私は、その子と一緒に全体の要素(ReportItem)を取り外し、次いで、濾過書きたいと思います。 xml。ありがとう!
編集 - ここで私はこれまで持っているものだが、私はそれがネストのこのレベルで動作するように取得するかどうかはわかりません。
from xml.etree.ElementTree import ElementTree
tree = ElementTree()
# Test input
tree.parse("test.xml")
for node in tree.findall('ReportItem'):
if tag.attrib['pluginID']=='11111':
tree.remove(node)
tree.write('test_out.xml')
あなたがそうのようなXPathのにロジックを移動することで 'if'チェックを削除することができます:' doc.xpath内のelemのための( '// * [@のPluginID = "{0}"]' %nessusID.stripを( '\ n')): ' – har07