diff --git a/feedcrawler/external_sites/feed_search/content_all.py b/feedcrawler/external_sites/feed_search/content_all.py index b01059c2..b7da5237 100644 --- a/feedcrawler/external_sites/feed_search/content_all.py +++ b/feedcrawler/external_sites/feed_search/content_all.py @@ -22,6 +22,7 @@ from feedcrawler.providers.common_functions import fullhd_title from feedcrawler.providers.common_functions import is_hevc from feedcrawler.providers.common_functions import is_retail +from feedcrawler.providers.common_functions import remove_suffix from feedcrawler.providers.common_functions import replace_with_stripped_ascii from feedcrawler.providers.myjd_connection import myjd_download from feedcrawler.providers.notifications import notify @@ -77,7 +78,7 @@ def search_imdb(self, desired_rating, feed): shared_state.logger.debug("Fehler beim Abruf von " + post.title + ": Kein Durchsuchbarer Inhalt gefunden.") content = False if content: - post.title = replace_with_stripped_ascii(post.title).replace(" ", ".") + post.title = remove_suffix(replace_with_stripped_ascii(post.title).replace(" ", "."), "_MIRROR") if self.search_imdb_done: shared_state.logger.debug( @@ -208,7 +209,7 @@ def search_feed(self, feed): shared_state.logger.debug("Fehler beim Abruf von " + post.title + ": Kein Durchsuchbarer Inhalt gefunden.") content = False if content: - post.title = replace_with_stripped_ascii(post.title).replace(" ", ".") + post.title = remove_suffix(replace_with_stripped_ascii(post.title).replace(" ", "."), "_MIRROR") if self.search_regular_done: shared_state.logger.debug( @@ -641,7 +642,7 @@ def download_imdb(self, key, download_links, source, imdb_id, size, hevc_retail, f"{'/Englisch/Retail' if englisch and retail else ''}" f"{'/Retail' if not englisch and retail else ''}" f"{'/HEVC' if hevc_retail else ''}" - f"] - {key} -" + f"] - {key} - " f"[{site}] - {size} - {source}" ) shared_state.logger.info(log_entry) diff --git a/feedcrawler/external_sites/feed_search/sites/content_all_dw.py b/feedcrawler/external_sites/feed_search/sites/content_all_dw.py index c3ef9535..ce4b3894 100644 --- a/feedcrawler/external_sites/feed_search/sites/content_all_dw.py +++ b/feedcrawler/external_sites/feed_search/sites/content_all_dw.py @@ -102,6 +102,13 @@ def dw_get_download_links(self, content, title): response = json.loads(post_url(ajax_url, payload)) if response["success"]: link = response["data"].split(",")[0] + + if dw in link: + match = re.search(r'https://' + dw + r'/azn/af\.php\?v=([A-Z0-9]+)(#.*)?', link) + if match: + link = 'https://filecrypt.cc/' + 'Container/' + match.group(1) + '.html' + ( + match.group(2) if match.group(2) else '') + hoster = button.nextSibling.img["src"].split("/")[-1].replace(".png", "") download_links.append([link, hoster]) except: diff --git a/feedcrawler/providers/common_functions.py b/feedcrawler/providers/common_functions.py index 45640917..e76a9824 100644 --- a/feedcrawler/providers/common_functions.py +++ b/feedcrawler/providers/common_functions.py @@ -623,6 +623,12 @@ def unify(string): return search_term in release_title +def remove_suffix(input_string, suffix): + if input_string.endswith(suffix): + return input_string[:-len(suffix)] + return input_string + + def replace_with_stripped_ascii(string): string = string.strip() diff --git a/feedcrawler/providers/http_requests/cache_handler.py b/feedcrawler/providers/http_requests/cache_handler.py index 046a3fad..f7754df2 100644 --- a/feedcrawler/providers/http_requests/cache_handler.py +++ b/feedcrawler/providers/http_requests/cache_handler.py @@ -101,10 +101,10 @@ def cached_request(url, method='get', params=None, headers=None, redirect_url=Fa allow_sponsors_helper_run = True if method == 'post': - response = request(url, method="POST", data=params, timeout=10, headers=headers, + response = request(url, method="POST", data=params, timeout=60, headers=headers, cookiejar=cookiejar, proxies=proxies, force_ipv4=force_ipv4) else: - response = request(url, timeout=10, headers=headers, cookiejar=cookiejar, proxies=proxies, + response = request(url, timeout=60, headers=headers, cookiejar=cookiejar, proxies=proxies, force_ipv4=force_ipv4) if response.status_code == 403 or 'id="challenge-body-text"' in response.text: diff --git a/feedcrawler/providers/myjd_connection.py b/feedcrawler/providers/myjd_connection.py index 258e2359..24d728ca 100644 --- a/feedcrawler/providers/myjd_connection.py +++ b/feedcrawler/providers/myjd_connection.py @@ -62,7 +62,7 @@ def set_device(myjd_user, myjd_pass, myjd_device): device.downloadcontroller.get_current_state() # request forces direct_connection info update connection_info = device.check_direct_connection() if connection_info["status"]: - print("Nutze direkte Verbindung zu JDownloader: " + connection_info["ip"]) + print(f"JDownloader direkt über {connection_info['ip']} verfügbar.") else: print("Keine direkte Verbindung zu JDownloader möglich") shared_state.set_device(device) diff --git a/feedcrawler/providers/version.py b/feedcrawler/providers/version.py index 0fa6db68..6a062d3b 100644 --- a/feedcrawler/providers/version.py +++ b/feedcrawler/providers/version.py @@ -8,7 +8,7 @@ def get_version(): - return "20.0.0" + return "20.0.1" def create_version_file(): diff --git a/feedcrawler/web_interface/vuejs_frontend/package-lock.json b/feedcrawler/web_interface/vuejs_frontend/package-lock.json index 45e41967..ab410a29 100644 --- a/feedcrawler/web_interface/vuejs_frontend/package-lock.json +++ b/feedcrawler/web_interface/vuejs_frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "feedcrawler-web", - "version": "20.0.0", + "version": "20.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "feedcrawler-web", - "version": "20.0.0", + "version": "20.0.1", "dependencies": { "@formkit/i18n": "^1.6.5", "@formkit/vue": "^1.6.5", diff --git a/feedcrawler/web_interface/vuejs_frontend/package.json b/feedcrawler/web_interface/vuejs_frontend/package.json index 60715854..40b6d4b9 100644 --- a/feedcrawler/web_interface/vuejs_frontend/package.json +++ b/feedcrawler/web_interface/vuejs_frontend/package.json @@ -1,6 +1,6 @@ { "name": "feedcrawler-web", - "version": "20.0.0", + "version": "20.0.1", "type": "module", "scripts": { "dev": "vite",