Skip to content

Instantly share code, notes, and snippets.

@29942016
Last active October 17, 2022 12:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 29942016/6b30d679e2300635d66a97e5106df37b to your computer and use it in GitHub Desktop.
Save 29942016/6b30d679e2300635d66a97e5106df37b to your computer and use it in GitHub Desktop.
import os
import subprocess
from datetime import date
import xml.etree.ElementTree as ET
inputFolder = "/home/user/Desktop/apks/leftover"
outputFolder = "/home/user/Desktop/apks/leftover-output"
files = os.listdir(inputFolder)
csv = ""
xmlNamespace = "{http://schemas.android.com/apk/res/android}"
xmlVersionTag = "versionName"
xmlPackageTag = "package"
# Generate Metadata output
for f in files:
if f.endswith(".apk"):
print(f)
# Create AXML
command = "androaxml -i " + inputFolder + "/" + f
outputFile = outputFolder + "/" + f + ".dump"
subprocess.call(command, stdout=open(outputFile, "w"), shell=True)
# Parse AXML
xmlTree = ET.parse(outputFolder + "/" + f + ".dump")
rootNode = xmlTree.getroot()
version = rootNode.attrib[xmlNamespace + xmlVersionTag]
package = rootNode.attrib[xmlPackageTag]
csv += package + ","
# Hash
command = "sha256sum " + inputFolder + "/" + f
proc = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)
apkHash = proc.stdout.read().split(" ")[0]
csv += apkHash + ","
# Date
csv += date.today().strftime("%d/%m/%Y") + ","
# Version
csv += version + "\n"
print("END")
print(csv)
example output:
com.smsrobot.photox,ef4f7556a028f9eb1b48163176e4c320a4f546abc7f65ffc6fe633f9d5694bb9,31/08/2022,8.2
smart.calculator.gallerylock,e85bd525c69e903620630ec30aaabbd406bcf68f302aad6257241cb80faaaac0,31/08/2022,23.0
com.privac.tools.applock,2b2a89efc9a47240d8066296d9c5181a64aa44af9f05260519deb9b235c10343,31/08/2022,1.45.0
com.evozi.deviceid,470816e16a8990134e7d07312f3e62668428fb4e92a411496e891c71c12883d9,31/08/2022,1.3.2
com.ext.ui,eb5811d69bfccf4bdcf085fbca8725ec47092b2ecdb97e4c5770a870f5edf538,31/08/2022,4.2.12
hyde.android.launcher3,a9dc5691e08731a1faa433f3a52ce820e1c9026fbed05379fb7951748ffefe83,31/08/2022,1.3.4
evolly.app.photovault,15dd86c8eb799471bb780e27584fe44e7c64d092e7c11ee5ab868ed7c2c8cc59,31/08/2022,1.5.5
com.sp.smartgallery.free,77bf261edc64a2f3e37fe63a8b1973127db64d28f691fdbedadac9351cb94c3e,31/08/2022,3.6.10
hidephoto.hidevideo.keep.safe.privatealbum.supervault,4179303af65caf6adf1f9d2603abb922d4c474a6dd69d530afefbc3d8d1d1372,31/08/2022,1.11.25
inno.gallerylocker,5910889954d72783b812c8c00d29b280a66321a8322e66b8fcad822dd9ae0f85,31/08/2022,6.1.0
com.handyapps.videolocker,74093e4124a1aed7fcae2ce90c73578bb0c3b3b8760b4bd654ab5409da74bbdb,31/08/2022,2.2.4
com.domobile.photolocker,fabdb132d6d80a1b319f5fe7a142a0b6906c8462183c1ddc2033525d6f83f4de,31/08/2022,1.8.6
com.phone.launcher.lite,1b026ebf67b61afaafcad01f41d8131d80137a8a6e2cc84afe5730164dea9d2f,31/08/2022,2.2.44
ukzzang.android.gallerylocklite,4ed6ef3dd50cc7fc2576e54d6703253df0ea86dc354029ed263784ca0beff0db,31/08/2022,5.6.1
com.prism.hide.gallery.vault,f4200bc9a6e762901c6fdc51d6a46d59c2f7366fbfcb10c1426d14f8973f8308,31/08/2022,1.3.9
com.handyapps.photoLocker,26f6eec1d686c4b55bfd51f112f7482560c38f41b6ee9d06f53fd0e85f218581,31/08/2022,2.2.3
com.baloota.galleryprotector,89786d6cfdcb16bfe42b589c26377fd0e4f4477fea4b2283bcd992c3c92191da,31/08/2022,2.5.47.fba7
com.ultra.applock,3264646186742fcf6e14c465805d383384243e98682a7b0ea0933b9ec9014760,31/08/2022,6.6
calc.gallery.lock,0455cf226a6205447f85c3365546de6c5b2147e3b3fd7f736d917daa592e52b8,31/08/2022,16.0
fv.foldervault.pro,d6ce966346e588069a7effc7b2b0384eb0d3ce2631d04e04ed330d72f540de22,31/08/2022,5.4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment