From 2129d7ea43b612b5b8afe8bdd894e6e4e020fea7 Mon Sep 17 00:00:00 2001 From: Nikhil Badyal Date: Thu, 24 Aug 2023 17:27:45 +0530 Subject: [PATCH 1/2] =?UTF-8?q?=F0=9F=8E=A8=20Package=20name=20as=20attrib?= =?UTF-8?q?ute?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app.py | 5 +++++ src/downloader/apkpure.py | 4 +--- src/downloader/apksos.py | 4 +--- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/app.py b/src/app.py index 26d2e11..7cd7333 100644 --- a/src/app.py +++ b/src/app.py @@ -17,6 +17,8 @@ class APP(object): """Patched APK.""" def __init__(self, app_name: str, config: RevancedConfig): + from src.patches import Patches + self.app_name = app_name self.app_version = config.env.str(f"{app_name}_VERSION".upper(), None) self.experiment = False @@ -48,6 +50,9 @@ class APP(object): self.download_dl = config.env.str(f"{app_name}_DL".upper(), "") self.download_patch_resources(config) self.download_source = config.env.str(f"{app_name}_DL_SOURCE".upper(), "") + self.package_name = config.env.str( + f"{app_name}_PACKAGE_NAME".upper(), Patches.get_package_name(app_name) + ) def download_apk_for_patching(self, config: RevancedConfig) -> None: """Download apk to be patched.""" diff --git a/src/downloader/apkpure.py b/src/downloader/apkpure.py index 0f01751..b590a45 100644 --- a/src/downloader/apkpure.py +++ b/src/downloader/apkpure.py @@ -3,7 +3,6 @@ from typing import Any, Tuple from src.app import APP from src.downloader.download import Downloader -from src.patches import Patches class ApkPure(Downloader): @@ -16,8 +15,7 @@ class ApkPure(Downloader): :param app: Name of the application :return: Version of downloaded apk """ - package_name = Patches.get_package_name(app.app_name) - download_url = app.download_source.format(package_name) + download_url = app.download_source.format(app.package_name) file_name = f"{app.app_name}.apk" self._download(download_url, file_name) return file_name, download_url diff --git a/src/downloader/apksos.py b/src/downloader/apksos.py index 4d6d236..60d6d4a 100644 --- a/src/downloader/apksos.py +++ b/src/downloader/apksos.py @@ -7,7 +7,6 @@ from bs4 import BeautifulSoup from src.app import APP from src.downloader.download import Downloader from src.exceptions import APKSosAPKDownloadFailure -from src.patches import Patches from src.utils import bs4_parser, request_header @@ -38,6 +37,5 @@ class ApkSos(Downloader): :param app: Name of the application :return: Version of downloaded apk """ - package_name = Patches.get_package_name(app.app_name) - download_url = app.download_source.format(package_name) + download_url = app.download_source.format(app.package_name) return self.extract_download_link(download_url, app.app_name) From a1c9fef70a6f2da377f016bab6d53866ac722006 Mon Sep 17 00:00:00 2001 From: Nikhil Badyal Date: Thu, 24 Aug 2023 17:34:40 +0530 Subject: [PATCH 2/2] =?UTF-8?q?=F0=9F=8E=A8=20Properly=20set=20download=20?= =?UTF-8?q?source?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app.py | 4 +++- src/downloader/apkpure.py | 5 ++--- src/downloader/apksos.py | 3 +-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/app.py b/src/app.py index 7cd7333..43c15b6 100644 --- a/src/app.py +++ b/src/app.py @@ -69,7 +69,9 @@ class APP(object): logger.info("Downloading apk to be patched by scrapping") try: if not self.download_source: - self.download_source = apk_sources[self.app_name] + self.download_source = apk_sources[self.app_name].format( + self.package_name + ) except KeyError: raise DownloadFailure(f"No download source found for {self.app_name}") downloader = DownloaderFactory.create_downloader( diff --git a/src/downloader/apkpure.py b/src/downloader/apkpure.py index b590a45..ee61df3 100644 --- a/src/downloader/apkpure.py +++ b/src/downloader/apkpure.py @@ -15,7 +15,6 @@ class ApkPure(Downloader): :param app: Name of the application :return: Version of downloaded apk """ - download_url = app.download_source.format(app.package_name) file_name = f"{app.app_name}.apk" - self._download(download_url, file_name) - return file_name, download_url + self._download(app.download_source, file_name) + return file_name, app.download_source diff --git a/src/downloader/apksos.py b/src/downloader/apksos.py index 60d6d4a..0194611 100644 --- a/src/downloader/apksos.py +++ b/src/downloader/apksos.py @@ -37,5 +37,4 @@ class ApkSos(Downloader): :param app: Name of the application :return: Version of downloaded apk """ - download_url = app.download_source.format(app.package_name) - return self.extract_download_link(download_url, app.app_name) + return self.extract_download_link(app.download_source, app.app_name)