Compare commits

..

5 Commits

6 changed files with 22 additions and 37 deletions
+1 -3
View File
@@ -2,7 +2,6 @@ import requests
from core.utils.data.state import state
from core.utils.logging.logs import consoleLog
def scrape_rutracker(query):
search = requests.get(f"{state.api_url}/search?q={query}")
consoleLog("Sent request to server")
@@ -12,10 +11,9 @@ def scrape_rutracker(query):
except Exception:
consoleLog("No results found / No response from server")
return None
else:
return None
# This function utilizes the SoftwareManager server - source code can be found under the "server" branch.
# This function utilizes the SoftwareManager server - source code can be found under the SoftwareManager-Server repository.
+13 -20
View File
@@ -10,33 +10,26 @@ def scrape_uztracker(query):
posts = []
try:
response = requests.get(
f"{search_url.rstrip('/')}/tracker.php",
params={'nm': query},
)
response = requests.get(search_url)
response.raise_for_status()
soup = BeautifulSoup(response.text, 'html.parser')
links = soup.find_all('a', class_="genmed tLink", href=lambda x: x and x.startswith('./viewtopic'))
links = soup.find_all('tr', class_="tCenter hl-tr", id=lambda x: x and x.startswith('tor_'))
for link in links:
if link.b:
title = link.b.text
url = urljoin(base_url, link['href'])
author_link = link.find_parent('td').find('a', class_="med ts-text")
author = author_link.text.strip() if author_link else "Unknown"
theme_link = link.find('a', class_="genmed tLink", href=lambda x: x and x.startswith('./viewtopic'))
url = urljoin(base_url, theme_link['href'])
title = theme_link.b.text
author_link = link.find('a', class_="med")
author = author_link.text.strip() if author_link else "Unknown"
posts.append(dict(
title=title,
url=url,
author=author
))
posts.append(dict(
title=title,
url=url,
author=author
))
return posts
except requests.RequestException as e:
consoleLog(f"Failed to fetch {search_url}: {e}")
return None
return None
+5 -5
View File
@@ -157,7 +157,7 @@ class MainWindow(QtWidgets.QMainWindow, QWidget):
header = table.horizontalHeader()
header.setSectionResizeMode(0, QHeaderView.ResizeMode.Stretch)
header.setSectionResizeMode(1, QHeaderView.ResizeMode.Fixed)
header.resizeSection(1, 200)
header.resizeSection(1, 500)
header.setStretchLastSection(False)
return table
@@ -513,12 +513,12 @@ class MainWindow(QtWidgets.QMainWindow, QWidget):
event.accept()
def set_tracker(self, _):
old_tracker = state.tracker
state.tracker = self.tracker_list.currentText()
while self.horizontal_layout.count():
item = self.horizontal_layout.takeAt(0)
if item.widget():
item.widget().setParent(None)
old_widget = state.tracker_list[old_tracker]
self.horizontal_layout.removeWidget(old_widget)
old_widget.setParent(None)
tracker_widget = state.tracker_list[state.tracker]
self.horizontal_layout.addWidget(tracker_widget)
+1 -1
View File
@@ -55,7 +55,7 @@ def return_pressed(self):
state.tracker_list[state.tracker].clear()
self.show_empty_results(True)
else:
state.post_author, state.post_titles, state.post_urls = format_data_minimal(state.posts)
state.post_author, state.post_titles, state.post_urls = format_data_minimal(state.posts)
self.show_empty_results(False)
state.tracker_list[state.tracker].clear()
state.tracker_list[state.tracker].setHorizontalHeaderLabels(["Post Title", "Author"])
+1 -7
View File
@@ -1,12 +1,9 @@
from core.utils.data.state import state
from core.utils.logging.logs import consoleLog
from core.utils.data.tracker import get_item_url
from core.utils.data.tracker import get_magnet_link
from core.network.libtorrent_wrapper import add_download
from core.utils.general.wrappers import run_thread
from core.utils.logging.logs import add_download_log
import time
import threading
@@ -26,7 +23,4 @@ def run_download(item, posts, post_titles):
add_download_log(item, post_url, magnet_uri, False)
def run_download_direct(magnet_uri):
add_download(magnet_uri)
add_download(magnet_uri)
+1 -1
View File
@@ -25,7 +25,7 @@ def format_data_minimal(data):
post_titles = [post["title"] for post in data]
post_links = [post["url"] for post in data]
return post_author, post_titles, post_links
return post_author, post_titles, post_links