Анализ файла манифеста Android для поиска тега uses-permission с использованием python

Я анализирую теги использования-разрешения в файле xml (androidmanifest.xml), упомянутом в приложении для Android

Я попытался реализовать цикл for, чтобы сделать его итеративным, но я потерпел неудачу, и я здесь

Python:

from xml.dom.minidom import parseString file = open('/root/Desktop/AndroidManifest.xml','r') data = file.read() file.close() dom = parseString(data) xmlTag = dom.getElementsByTagName('uses-permission')[0].toxml() print xmlTag 

Вывод:

  <uses-permission android:name="android.permission.INTERNET"> </uses-permission> 

Для ошибки цикла:

 for uses-permission in xmlTag: #print child.tag, child.attrib print xmlTag.tag xmlTag = dom.getElementsByTagName('uses-permission')[1].toxml() xmlTag= dom._get_childNodes #print xmlTag 

Чтобы найти все теги разрешений, попробуйте выполнить итерацию по узлам, которые dom.getElementsByTagName('uses-permission') возвращает вместо доступа только к узлу с индексом 0 :

 from xml.dom.minidom import parseString data = '' with open('/root/Desktop/AndroidManifest.xml','r') as f: data = f.read() dom = parseString(data) nodes = dom.getElementsByTagName('uses-permission') # Iterate over all the uses-permission nodes for node in nodes: print node.toxml() 

Или если вы хотите только разрешение, а не xml, вы можете заменить node.toxml() на node.getAttribute('android:name') .

Intereting Posts