diff --git a/src/app.py b/src/app.py index 26d2e11..43c15b6 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.""" @@ -64,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 0f01751..ee61df3 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,6 @@ 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) 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 4d6d236..0194611 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,4 @@ 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) - return self.extract_download_link(download_url, app.app_name) + return self.extract_download_link(app.download_source, app.app_name)