Files
acc-installer/module/extract_acc.py

51 lines
1.7 KiB
Python

import os
import shutil
import zipfile
def extract_acc_archive(base_drive: str = r"D:\\") -> str:
# Base directory set to NovinPardazOne
base_dir = os.path.join(base_drive, "NovinPardazOne")
soft_dir = os.path.join(base_dir, "NovinSoft")
acc_dir = os.path.join(base_dir, "NovinAcc")
target_zip_name = "NovinAcc.zip"
source_zip_path = os.path.join(soft_dir, target_zip_name)
target_zip_path = os.path.join(acc_dir, target_zip_name)
# 1. Check if NovinSoft directory exists
if not os.path.exists(soft_dir):
raise FileNotFoundError(f"[-] Directory not found: {soft_dir}")
# 2. Check if zip file exists
if not os.path.exists(source_zip_path):
raise FileNotFoundError(f"[-] File {target_zip_name} was not found in {soft_dir}!")
# 3. Create NovinAcc directory if it doesn't exist
os.makedirs(acc_dir, exist_ok=True)
# 4. Move zip file to NovinAcc
print(f"[+] Moving {target_zip_name} to NovinAcc directory...")
shutil.move(source_zip_path, target_zip_path)
print(" [+] Zip file moved successfully.")
# 5. Extract archive
print(f"[+] Extracting archive to {acc_dir}...")
with zipfile.ZipFile(target_zip_path, 'r') as zip_ref:
zip_ref.extractall(acc_dir)
print(" [+] All files extracted successfully.")
# 6. Remove temporary zip file
if os.path.exists(target_zip_path):
os.remove(target_zip_path)
print(" [+] Temporary zip file deleted.")
return acc_dir
if __name__ == "__main__":
os.system("chcp 65001 > nul")
print("[+] Running move and extract module ...")
try:
extract_acc_archive(base_drive=r"D:\\")
except Exception as e:
print(f"[-] Error: {e}")