From 1ae1b1506f342d96d6e6195d532611f1f0478c1d Mon Sep 17 00:00:00 2001 From: Nogzi Date: Wed, 20 Oct 2021 22:16:40 +0200 Subject: [PATCH 1/3] Trying to capture any link given to sonica Capturing any link given to sonica to avoid the stack overflow when pasting in a song link --- players.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/players.py b/players.py index 530e532..f267760 100644 --- a/players.py +++ b/players.py @@ -1,6 +1,7 @@ from dataclasses import dataclass from collections.abc import Callable +import re import deemix import deemix.settings from deemix.downloader import Downloader @@ -91,6 +92,9 @@ def send(self, kind, message): self.callback(message['downloadPath']) def search(self, query: str): + url_check = query + if re.search("/([a-z]*[.])\w+/", url_check) == True: + return "You cant use links" results = self.dz.api.search(query)['data'] #print(results[0:9]) res_list = [ From 878042b2502c68645a922da84ce81cea54b893f9 Mon Sep 17 00:00:00 2001 From: Nogzi Date: Fri, 22 Oct 2021 11:08:15 +0200 Subject: [PATCH 2/3] Removed "/" that was not needed in the regex pattern --- players.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/players.py b/players.py index f267760..467506f 100644 --- a/players.py +++ b/players.py @@ -93,7 +93,7 @@ def send(self, kind, message): def search(self, query: str): url_check = query - if re.search("/([a-z]*[.])\w+/", url_check) == True: + if re.search("([a-z]*[.])\w+", url_check) == True: return "You cant use links" results = self.dz.api.search(query)['data'] #print(results[0:9]) From 956b22ac9f36faf9422f8a9cb117f1521a4cb823 Mon Sep 17 00:00:00 2001 From: Nogzi Date: Fri, 22 Oct 2021 11:22:10 +0200 Subject: [PATCH 3/3] Updated to return an empty list if given a link returning a string gave some interresting results in the output --- players.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/players.py b/players.py index 467506f..fe20fad 100644 --- a/players.py +++ b/players.py @@ -93,8 +93,8 @@ def send(self, kind, message): def search(self, query: str): url_check = query - if re.search("([a-z]*[.])\w+", url_check) == True: - return "You cant use links" + if re.search("([a-z]*[.])\w+", url_check): + return [] results = self.dz.api.search(query)['data'] #print(results[0:9]) res_list = [