Я работаю над скриптом Python, который читает файл APK, который хранится в папке на том же сервере, на котором работает скрипт.
вот код, который я использую:
apk_path = "/var/fibo-dev/public/uploads/apks/TvBox-release-signed-latest.apk"
apkf = APK(apk_path)
is_valid = apkf.is_valid_APK()
package = apkf.get_package()
version = apkf.androidversion
version = version['Name']
Пакет парсинга APK:
https://github.com/androguard/androguard
Скрипт считывает содержимое APK, например, его версию, имя пакета и т. Д., А затем сохраняет информацию в формате CSV.
Как видите, APK, который я читаю, хранится на том же сервере, на котором размещен скрипт.
Но теперь я хочу прочитать APK, который находится на другом сервере. т.е. https://fibo.network/uploads/apks/18243602447plus_v4.3.4.apk
и когда я пытаюсь сделать то же самое для данного URL, это не работает.
например:
url = urllib2.urlopen("https://fibo.network/uploads/apks/18243602447plus_v4.3.4.apk")
apkf = APK(url.read())
выдает ошибку:
file () аргумент 1 должен быть закодированной строкой без нулевых байтов, а не str
Я пытался использовать другие методы, такие как:
urlopen
,
requests.get
и более
Но никто из них не работал для меня.
Поэтому я прошу вас помочь мне разобраться с этим вопросом.
Спасибо.