From 86759ad24144e95a3e6554fda42f404d04aa988c Mon Sep 17 00:00:00 2001 From: Howard Wu Date: Sun, 26 Mar 2023 20:31:44 +0800 Subject: [PATCH] All Python scripts use relative path --- scripts/extractWSA.py | 13 ++++--------- scripts/generateGappsLink.py | 4 ++-- scripts/generateKernelSULink.py | 2 +- scripts/generateMagiskLink.py | 2 +- scripts/generateWSALinks.py | 24 +++++++++++++----------- scripts/getWSAMainVersion.py | 2 +- 6 files changed, 22 insertions(+), 25 deletions(-) diff --git a/scripts/extractWSA.py b/scripts/extractWSA.py index 437cf30..2a3032d 100644 --- a/scripts/extractWSA.py +++ b/scripts/extractWSA.py @@ -29,17 +29,12 @@ import shutil arch = sys.argv[1] zip_name = "" -wsa_zip_path_raw = sys.argv[2] - -wsa_zip_path = Path(wsa_zip_path_raw).resolve() -rootdir = Path(sys.argv[3]).resolve() -env_file_raw = sys.argv[4] -print( - f"wsa_zip_path_raw: {wsa_zip_path_raw}, env_file_raw: {env_file_raw}", flush=True) -env_file = Path(env_file_raw).resolve() +wsa_zip_path = Path(sys.argv[2]) +rootdir = Path(sys.argv[3]) +env_file = Path(sys.argv[4]) workdir = rootdir / "wsa" -archdir = Path(workdir / arch).resolve() +archdir = Path(workdir / arch) pridir = workdir / archdir / 'pri' xmldir = workdir / archdir / 'xml' if not Path(rootdir).is_dir(): diff --git a/scripts/generateGappsLink.py b/scripts/generateGappsLink.py index 95fa592..9b97aab 100644 --- a/scripts/generateGappsLink.py +++ b/scripts/generateGappsLink.py @@ -29,8 +29,8 @@ from pathlib import Path arch = sys.argv[1] brand = sys.argv[2] variant = sys.argv[3] -download_dir = Path.cwd().parent / \ - "download" if sys.argv[4] == "" else Path(sys.argv[4]).resolve() +arg4 = sys.argv[4] +download_dir = Path.cwd().parent / "download" if arg4 == "" else Path(arg4) tempScript = sys.argv[5] android_api = sys.argv[6] file_name = sys.argv[7] diff --git a/scripts/generateKernelSULink.py b/scripts/generateKernelSULink.py index 41c89bc..a14930f 100644 --- a/scripts/generateKernelSULink.py +++ b/scripts/generateKernelSULink.py @@ -29,7 +29,7 @@ from pathlib import Path arch = sys.argv[1] download_dir = Path.cwd().parent / \ - "download" if sys.argv[2] == "" else Path(sys.argv[2]).resolve() + "download" if sys.argv[2] == "" else Path(sys.argv[2]) tempScript = sys.argv[3] kernelVersion = sys.argv[4] file_name = sys.argv[5] diff --git a/scripts/generateMagiskLink.py b/scripts/generateMagiskLink.py index da41be5..1fbffba 100644 --- a/scripts/generateMagiskLink.py +++ b/scripts/generateMagiskLink.py @@ -25,7 +25,7 @@ import requests from pathlib import Path magisk_ver = sys.argv[1] -download_dir = Path.cwd().parent / "download" if sys.argv[2] == "" else Path(sys.argv[2]).resolve() +download_dir = Path.cwd().parent / "download" if sys.argv[2] == "" else Path(sys.argv[2]) tempScript = sys.argv[3] print(f"Generating Magisk download link: release type={magisk_ver}", flush=True) if not magisk_ver: diff --git a/scripts/generateWSALinks.py b/scripts/generateWSALinks.py index ed9dac6..fcd65a1 100644 --- a/scripts/generateWSALinks.py +++ b/scripts/generateWSALinks.py @@ -19,6 +19,7 @@ # import html +import logging import os import re import sys @@ -32,7 +33,7 @@ from requests import Session class Prop(OrderedDict): - def __init__(self, props: str=...) -> None: + def __init__(self, props: str = ...) -> None: super().__init__() for i, line in enumerate(props.splitlines(False)): if '=' in line: @@ -44,19 +45,21 @@ class Prop(OrderedDict): def get(self, key: str) -> str: return self[key] +logging.captureWarnings(True) arch = sys.argv[1] release_name_map = {"retail": "Retail", "RP": "Release Preview", "WIS": "Insider Slow", "WIF": "Insider Fast"} release_type = sys.argv[2] if sys.argv[2] != "" else "Retail" release_name = release_name_map[release_type] -download_dir = Path.cwd().parent / "download" if sys.argv[3] == "" else Path(sys.argv[3]).resolve() +download_dir = Path.cwd().parent / \ + "download" if sys.argv[3] == "" else Path(sys.argv[3]) ms_account_conf = download_dir/".ms_account" tempScript = sys.argv[4] cat_id = '858014f3-3934-4abe-8078-4aa193e74ca8' user = '' session = Session() - +session.verify = False if ms_account_conf.is_file(): with open(ms_account_conf, "r") as f: conf = Prop(f.read()) @@ -68,8 +71,7 @@ with open(Path.cwd().parent / ("xml/GetCookie.xml"), "r") as f: out = session.post( 'https://fe3.delivery.mp.microsoft.com/ClientWebService/client.asmx', data=cookie_content, - headers={'Content-Type': 'application/soap+xml; charset=utf-8'}, - verify=False + headers={'Content-Type': 'application/soap+xml; charset=utf-8'} ) doc = minidom.parseString(out.text) cookie = doc.getElementsByTagName('EncryptedData')[0].firstChild.nodeValue @@ -80,8 +82,7 @@ with open(Path.cwd().parent / "xml/WUIDRequest.xml", "r") as f: out = session.post( 'https://fe3.delivery.mp.microsoft.com/ClientWebService/client.asmx', data=cat_id_content, - headers={'Content-Type': 'application/soap+xml; charset=utf-8'}, - verify=False + headers={'Content-Type': 'application/soap+xml; charset=utf-8'} ) doc = minidom.parseString(html.unescape(out.text)) @@ -107,12 +108,12 @@ if not download_dir.is_dir(): download_dir.mkdir() tmpdownlist = open(download_dir/tempScript, 'a') -def send_req(i,v,out_file,out_file_name): + +def send_req(i, v, out_file, out_file_name): out = session.post( 'https://fe3.delivery.mp.microsoft.com/ClientWebService/client.asmx/secured', data=FE3_file_content.format(user, i, v, release_type), - headers={'Content-Type': 'application/soap+xml; charset=utf-8'}, - verify=False + headers={'Content-Type': 'application/soap+xml; charset=utf-8'} ) doc = minidom.parseString(out.text) for l in doc.getElementsByTagName("FileLocation"): @@ -123,6 +124,7 @@ def send_req(i,v,out_file,out_file_name): tmpdownlist.writelines(f' dir={download_dir}\n') tmpdownlist.writelines(f' out={out_file_name}\n') + threads = [] for i, v, f in identities: if re.match(f"Microsoft\.UI\.Xaml\..*_{arch}_.*\.appx", f): @@ -142,7 +144,7 @@ for i, v, f in identities: out_file = download_dir / out_file_name else: continue - th = Thread(target=send_req, args=(i,v,out_file,out_file_name)) + th = Thread(target=send_req, args=(i, v, out_file, out_file_name)) threads.append(th) th.daemon = True th.start() diff --git a/scripts/getWSAMainVersion.py b/scripts/getWSAMainVersion.py index 1186ecf..cf16a20 100644 --- a/scripts/getWSAMainVersion.py +++ b/scripts/getWSAMainVersion.py @@ -26,7 +26,7 @@ from pathlib import Path arch = sys.argv[1] zip_name = "" -wsa_zip_path= Path(sys.argv[2]).resolve() +wsa_zip_path= Path(sys.argv[2]) with zipfile.ZipFile(wsa_zip_path) as zip: for f in zip.filelist: