worked on gui implementation and cleaned up a bit

This commit is contained in:
nosch
2026-02-28 17:58:50 +01:00
parent e4d1c189b7
commit 889c50e201
6 changed files with 29 additions and 139 deletions
-7
View File
@@ -35,13 +35,6 @@ def scrape_steamrip_links(text = None):
return ret
def offline_scrape_steamrip_links():
text = ""
with open("example.html", encoding = "utf-8") as f:
text=f.read()
return scrape_steamrip_links(text)
def scrape_steamrip_game_downloads(gamelink):
url = "https://steamrip.com" + gamelink
response = requests.get(url)
+10 -14
View File
@@ -144,7 +144,7 @@ class MainWindow(QtWidgets.QMainWindow, QWidget):
flush_log_buffer()
def create_tracker_table(headers):
def create_tracker_table(headers, key):
table = QTableWidget()
table.setColumnCount(len(headers))
table.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
@@ -156,21 +156,17 @@ class MainWindow(QtWidgets.QMainWindow, QWidget):
header.setSectionResizeMode(1, QHeaderView.ResizeMode.Fixed)
header.resizeSection(1, 500)
header.setStretchLastSection(False)
table.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
table.viewport().setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
return table
state.tracker_list.update({key: table})
self.rutrackerlist = create_tracker_table(["Post Title", "Author", "Seeders", "Leechers"])
self.uztrackerlist = create_tracker_table(["Post Title", "Author"])
self.monkruslist = create_tracker_table(["Post Title", "Author"])
state.tracker_list.update({"rutracker": self.rutrackerlist, "uztracker": self.uztrackerlist, "m0nkrus": self.monkruslist})
self.rutrackerlist.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
self.rutrackerlist.viewport().setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
self.uztrackerlist.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
self.uztrackerlist.viewport().setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
create_tracker_table(["Post Title", "Author", "Seeders", "Leechers"], "rutracker")
create_tracker_table(["Post Title", "Author"], "uztracker")
create_tracker_table(["Post Title", "Author"], "m0nkrus")
create_tracker_table(["Game", "Availible Downloads"], "steamrip")
container = QWidget()
containerLayout = QVBoxLayout()
@@ -408,7 +404,7 @@ class MainWindow(QtWidgets.QMainWindow, QWidget):
self.tracker_list = QComboBox()
self.tracker_list.addItems(["rutracker", "uztracker", "m0nkrus"])
self.tracker_list.addItems(list(state.tracker_list.keys()))
self.tracker_list.setCursor(Qt.CursorShape.PointingHandCursor)
self.tracker_list.activated.connect(self.set_tracker)
self.corner_layout.addWidget(self.tracker_list)
+1 -1
View File
@@ -103,7 +103,7 @@ if __name__ == "__main__":
import core.data.scrapers.steamrip as sr
app = QtWidgets.QApplication([])
widget = FuzzySearchWindow(sr.offline_scrape_steamrip_links())
widget = FuzzySearchWindow(sr.scrape_steamrip_links())
widget.resize(600,400)
widget.show()
+17
View File
@@ -3,8 +3,10 @@ from core.utils.logging.logs import consoleLog
from core.data.scrapers.uztracker import scrape_uztracker
from core.data.scrapers.rutracker import scrape_rutracker
from core.data.scrapers.monkrus import scrape_monkrus_telegram
from core.data.scrapers.steamrip import scrape_steamrip_links, scrape_steamrip_game_downloads
from core.utils.network.jsonhandler import split_data, format_data, format_data_m0nkrus
from core.utils.data.state import state
import fuzzyfinder
def return_pressed(self):
search_text = self.searchbar.text()
@@ -81,3 +83,18 @@ def return_pressed(self):
state.tracker_list[state.tracker].setItem(i, 1, QTableWidgetItem(author))
for i, title in enumerate(state.post_titles):
state.tracker_list[state.tracker].setItem(i, 0, QTableWidgetItem(title))
elif state.tracker == "steamrip":
games = scrape_steamrip_links()
options: Generator = fuzzyfinder.main.fuzzyfinder(search_text, self.opts, accessor=lambda x: x["name"])
filtered_opts = [*options]
if filtered_opts == []:
consoleLog(f"No results for {search_text}")
state.tracker_list[state.tracker].clear()
self.show_empty_results(True)
else:
state
+1 -1
View File
@@ -8,7 +8,7 @@ class AppState(QObject):
def __init__(self):
super().__init__()
self.posts: List[Dict[str, Any]] = []
self.posts: List[Dict[str, Any]] = [] # title, url, author, seeders, leachers
self.post_titles: Optional[List] = None
self.post_urls: Optional[List] = None
self.post_author: List[str] = []
-116
View File
File diff suppressed because one or more lines are too long