diff --git a/src/core/data/scrapers/monkrus.py b/src/core/data/scrapers/monkrus.py index 3b40c9f..bf4c1cf 100644 --- a/src/core/data/scrapers/monkrus.py +++ b/src/core/data/scrapers/monkrus.py @@ -1,5 +1,5 @@ -from core.utils.data.state import state from core.utils.data.tracker import get_magnet_link +from core.utils.data.state import state from bs4 import BeautifulSoup from typing import Dict import requests diff --git a/src/core/data/scrapers/provider/gofile.py b/src/core/data/scrapers/provider/gofile.py index 4a101d1..ed5dea6 100644 --- a/src/core/data/scrapers/provider/gofile.py +++ b/src/core/data/scrapers/provider/gofile.py @@ -27,5 +27,5 @@ def scrape_gofile(url): return temp[child[0]]["link"] except: - consoleLog("gofile didnt auth you, either the api has changed\n or you sent to many requests, please try again later.\n If it still doesnt work please open an issue on Github.") + consoleLog("GoFile Authorisation failed, if the Issue persists, please open an Issue on GitHub") diff --git a/src/core/data/scrapers/rutracker.py b/src/core/data/scrapers/rutracker.py index 783866a..e6a0905 100644 --- a/src/core/data/scrapers/rutracker.py +++ b/src/core/data/scrapers/rutracker.py @@ -1,9 +1,9 @@ -import requests -from core.utils.data.state import state -from core.utils.logging.logs import consoleLog -from core.utils.data.tracker import get_magnet_link from core.utils.network.jsonhandler import split_data, format_data +from core.utils.data.tracker import get_magnet_link +from core.utils.logging.logs import consoleLog +from core.utils.data.state import state from typing import Dict +import requests def scrape_rutracker(query): search = requests.get(f"{state.api_url}/search?q={query}", timeout=15) diff --git a/src/core/data/scrapers/steamrip.py b/src/core/data/scrapers/steamrip.py index 29e8233..fbf0dcf 100644 --- a/src/core/data/scrapers/steamrip.py +++ b/src/core/data/scrapers/steamrip.py @@ -6,8 +6,9 @@ from bs4 import BeautifulSoup from typing import Dict import webbrowser import requests -import re import time +import re + cache = { "data": [], diff --git a/src/core/data/scrapers/uztracker.py b/src/core/data/scrapers/uztracker.py index 621632d..c5b118b 100644 --- a/src/core/data/scrapers/uztracker.py +++ b/src/core/data/scrapers/uztracker.py @@ -1,10 +1,10 @@ -import requests -from bs4 import BeautifulSoup -from urllib.parse import urljoin +from core.utils.data.tracker import get_magnet_link from core.utils.logging.logs import consoleLog from core.utils.data.state import state -from core.utils.data.tracker import get_magnet_link +from urllib.parse import urljoin +from bs4 import BeautifulSoup from typing import Dict +import requests def scrape_uztracker(query): diff --git a/src/core/interface/dialogs/settings.py b/src/core/interface/dialogs/settings.py index 58ae464..04b4c9f 100644 --- a/src/core/interface/dialogs/settings.py +++ b/src/core/interface/dialogs/settings.py @@ -1,12 +1,12 @@ -from core.utils.config.settings import save_settings -from core.utils.data.state import state -from core.utils.logging.logs import consoleLog from core.interface.utils.tabhelper import general_tab -from core.interface.utils.tabhelper import paths_tab from core.interface.utils.tabhelper import network_tab +from core.utils.config.settings import save_settings +from core.interface.utils.tabhelper import paths_tab from core.interface.utils.svghelper import svg_icon -from PySide6 import QtWidgets +from core.utils.logging.logs import consoleLog +from core.utils.data.state import state from PySide6.QtCore import Qt, QSize +from PySide6 import QtWidgets from PySide6.QtWidgets import ( QLineEdit, QPushButton, @@ -21,6 +21,7 @@ from PySide6.QtWidgets import ( QComboBox, QTabWidget, ) + import platform SVG_FOLDER = '' diff --git a/src/core/network/direct_download/handle.py b/src/core/network/direct_download/handle.py index 2d14e92..b223ce5 100644 --- a/src/core/network/direct_download/handle.py +++ b/src/core/network/direct_download/handle.py @@ -1,17 +1,17 @@ -import os -import threading -import requests -import json -import hashlib -import time +from core.utils.logging.logs import consoleLog, update_download_completed from concurrent.futures import ThreadPoolExecutor, as_completed +from .status import DirectDownloadStatus, ChunkSpec +from core.utils.data.state import state +from .utils import format_size from typing import Optional import libtorrent as lt +import threading +import requests +import hashlib +import json +import time +import os -from core.utils.logging.logs import consoleLog, update_download_completed -from core.utils.data.state import state -from .status import DirectDownloadStatus, ChunkSpec -from .utils import format_size class SimpleThrottler: def __init__(self): diff --git a/src/core/network/direct_download/status.py b/src/core/network/direct_download/status.py index fa9ca44..aabb87b 100644 --- a/src/core/network/direct_download/status.py +++ b/src/core/network/direct_download/status.py @@ -1,8 +1,8 @@ -import threading -import time from dataclasses import dataclass from typing import Optional import libtorrent as lt +import threading +import time @dataclass diff --git a/src/core/network/direct_download/utils.py b/src/core/network/direct_download/utils.py index fbd4e7d..a7b367e 100644 --- a/src/core/network/direct_download/utils.py +++ b/src/core/network/direct_download/utils.py @@ -1,7 +1,7 @@ -import os -import requests -from typing import Optional from urllib.parse import urlparse, unquote +from typing import Optional +import requests +import os def sanitize_filename(name: str) -> str: # Remove or replace dangerous characters diff --git a/src/core/network/libtorrent_int.py b/src/core/network/libtorrent_int.py index 2d04184..4289620 100644 --- a/src/core/network/libtorrent_int.py +++ b/src/core/network/libtorrent_int.py @@ -1,13 +1,13 @@ -import time -import os +from core.network.interface import get_interface_ip +from core.utils.general.wrappers import run_thread +from core.utils.logging.logs import consoleLog +from core.utils.data.state import state +import libtorrent as lt +import threading import platform import ctypes -from core.utils.general.wrappers import run_thread -from core.network.interface import get_interface_ip -import threading -import libtorrent as lt -from core.utils.data.state import state -from core.utils.logging.logs import consoleLog +import time +import os global loop_running diff --git a/src/core/network/libtorrent_misc.py b/src/core/network/libtorrent_misc.py index 411e1d7..d1aa39c 100644 --- a/src/core/network/libtorrent_misc.py +++ b/src/core/network/libtorrent_misc.py @@ -1,10 +1,10 @@ -from core.utils.data.state import state from core.utils.logging.logs import update_download_completed_by_hash from core.utils.logging.logs import consoleLog +from core.utils.data.state import state from plyer import notification import libtorrent as lt -import os import time +import os def cleanup_session(): diff --git a/src/core/network/libtorrent_wrapper.py b/src/core/network/libtorrent_wrapper.py index 3720353..da9f4c2 100644 --- a/src/core/network/libtorrent_wrapper.py +++ b/src/core/network/libtorrent_wrapper.py @@ -1,5 +1,6 @@ -from core.utils.logging.logs import consoleLog from core.network.libtorrent_int import add_download +from core.utils.logging.logs import consoleLog + def add_magnet(uri): if uri is not None and uri.startswith("magnet:?"): diff --git a/src/core/utils/config/settings.py b/src/core/utils/config/settings.py index f7ab3e7..9dd986b 100644 --- a/src/core/utils/config/settings.py +++ b/src/core/utils/config/settings.py @@ -1,6 +1,6 @@ from core.network.libtorrent_int import update_settings -from core.utils.data.state import state from core.utils.logging.logs import consoleLog +from core.utils.data.state import state from .config import create_config diff --git a/src/core/utils/data/state.py b/src/core/utils/data/state.py index 15d98bd..a98223a 100644 --- a/src/core/utils/data/state.py +++ b/src/core/utils/data/state.py @@ -1,8 +1,8 @@ -import threading from PySide6.QtCore import QObject, Signal from PySide6.QtWidgets import QTableWidget from typing import Any, List, Dict from pathlib import Path +import threading class AppState(QObject): image_changed = Signal(str) diff --git a/src/core/utils/data/tracker.py b/src/core/utils/data/tracker.py index f70756b..4def4c0 100644 --- a/src/core/utils/data/tracker.py +++ b/src/core/utils/data/tracker.py @@ -1,6 +1,6 @@ -import requests -from bs4 import BeautifulSoup from core.utils.logging.logs import consoleLog +from bs4 import BeautifulSoup +import requests def get_magnet_link(post_url): diff --git a/src/core/utils/logging/loghandler.py b/src/core/utils/logging/loghandler.py index 8863cac..c105618 100644 --- a/src/core/utils/logging/loghandler.py +++ b/src/core/utils/logging/loghandler.py @@ -1,5 +1,5 @@ -from core.utils.logging.logs import consoleLog, remove_download_log from core.utils.network.download import run_download_direct, seed_magnet +from core.utils.logging.logs import consoleLog, remove_download_log import os def split_data(data): diff --git a/src/core/utils/logging/logs.py b/src/core/utils/logging/logs.py index deec46a..a3444db 100644 --- a/src/core/utils/logging/logs.py +++ b/src/core/utils/logging/logs.py @@ -3,10 +3,10 @@ from core.utils.data.state import state from dataclasses import asdict from datetime import datetime import json +import time import os import re -import time -import threading + def add_download_log(title, url, magnet_uri, completed) -> DownloadList: # wait for metadata outside the lock to avoid blocking other threads diff --git a/src/core/utils/network/download.py b/src/core/utils/network/download.py index 59b3cf8..fd9623b 100644 --- a/src/core/utils/network/download.py +++ b/src/core/utils/network/download.py @@ -1,12 +1,12 @@ -from PySide6.QtWidgets import QTableWidgetItem -from PySide6.QtCore import Qt -from core.utils.logging.logs import consoleLog -from core.network.libtorrent_wrapper import add_magnet -from core.utils.general.wrappers import run_thread -from core.utils.logging.logs import add_download_log -from core.network.libtorrent_int import add_seed -from core.utils.data.state import state from core.network.direct_download import add_direct_download +from core.network.libtorrent_wrapper import add_magnet +from core.utils.logging.logs import add_download_log +from core.utils.general.wrappers import run_thread +from core.network.libtorrent_int import add_seed +from PySide6.QtWidgets import QTableWidgetItem +from core.utils.logging.logs import consoleLog +from core.utils.data.state import state +from PySide6.QtCore import Qt import threading diff --git a/src/core/utils/network/update_checker.py b/src/core/utils/network/update_checker.py index a82c2ce..e1e76c8 100644 --- a/src/core/utils/network/update_checker.py +++ b/src/core/utils/network/update_checker.py @@ -1,6 +1,8 @@ -import requests -from core.utils.data.state import state from core.utils.logging.logs import consoleLog +from core.utils.data.state import state +import requests + + def get_updates(): url = f"https://api.github.com/repos/KeksPirates/SoftwareManager/releases/latest" diff --git a/src/main.py b/src/main.py index 1ec8109..f09fb49 100644 --- a/src/main.py +++ b/src/main.py @@ -1,21 +1,21 @@ -from core.interface.gui import MainWindow -from core.utils.data.state import state -from core.utils.logging.logs import consoleLog from core.network.libtorrent_misc import send_notification, update_log, check_deleted_files +from core.utils.logging.loghandler import split_data, check_completed, check_downloads +from core.network.interface import list_interfaces, init_interfaces from core.utils.logging.logs import get_download_logs from core.utils.general.shutdown import closehelper from core.utils.general.wrappers import run_thread -from core.utils.logging.loghandler import split_data, check_completed, check_downloads -from core.network.interface import list_interfaces, init_interfaces from core.utils.config.config import read_config +from core.utils.logging.logs import consoleLog +from core.interface.gui import MainWindow +from core.utils.data.state import state from PySide6 import QtWidgets from PySide6.QtCore import Qt import qdarktheme import threading import platform import signal -import sys import time +import sys def run_gui(): app = QtWidgets.QApplication.instance() or QtWidgets.QApplication(sys.argv)