From 9d647e8dfec08edee9e617494515b6d8069d2665 Mon Sep 17 00:00:00 2001
From: Luca <l.dimarino@gmail.com>
Date: Wed, 8 May 2013 12:33:30 +0200
Subject: [PATCH] Torrent Providers use unidecode module for search string

---
 sickbeard/providers/iptorrents.py   | 4 ++--
 sickbeard/providers/kat.py          | 6 +++---
 sickbeard/providers/thepiratebay.py | 3 ++-
 sickbeard/providers/torrentleech.py | 4 ++--
 4 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/sickbeard/providers/iptorrents.py b/sickbeard/providers/iptorrents.py
index 862f83846..9ad9cf742 100644
--- a/sickbeard/providers/iptorrents.py
+++ b/sickbeard/providers/iptorrents.py
@@ -28,7 +28,7 @@ from sickbeard.common import Overview
 from sickbeard.exceptions import ex
 from lib import requests
 from bs4 import BeautifulSoup
-
+from lib.unidecode import unidecode
 
 class IPTorrentsProvider(generic.TorrentProvider):
 
@@ -147,7 +147,7 @@ class IPTorrentsProvider(generic.TorrentProvider):
             for search_string in search_params[mode]:
 
                 # URL with 50 tv-show results, or max 150 if adjusted in IPTorrents profile
-                searchURL = self.urls['search'] % (self.categorie, freeleech, search_string) + ';o=seeders'
+                searchURL = self.urls['search'] % (self.categorie, freeleech, unidecode(search_string)) + ';o=seeders'
 
                 logger.log(u"" + self.name + " search page URL: " + searchURL, logger.DEBUG)
         
diff --git a/sickbeard/providers/kat.py b/sickbeard/providers/kat.py
index f78de063a..ac345851a 100644
--- a/sickbeard/providers/kat.py
+++ b/sickbeard/providers/kat.py
@@ -24,18 +24,18 @@ import re
 
 import sickbeard
 import generic
-from sickbeard.common import Quality
+from sickbeard.common import Quality, Overview 
 from sickbeard.name_parser.parser import NameParser, InvalidNameException
 from sickbeard import logger
 from sickbeard import tvcache
 from sickbeard import helpers
 from sickbeard.show_name_helpers import allPossibleShowNames, sanitizeSceneName
-from sickbeard.common import Overview 
 from sickbeard.exceptions import ex
 from sickbeard import encodingKludge as ek
 
 from lib import requests
 from bs4 import BeautifulSoup
+from lib.unidecode import unidecode
 
 class KATProvider(generic.TorrentProvider):
 
@@ -211,7 +211,7 @@ class KATProvider(generic.TorrentProvider):
             for search_string in search_params[mode]:
                 
                 if mode != 'RSS':
-                    searchURL = self.searchurl %(urllib.quote(search_string))    
+                    searchURL = self.searchurl %(urllib.quote(unidecode(search_string)))    
                     logger.log(u"Search string: " + searchURL, logger.DEBUG)
                 else:
                     searchURL = self.url + 'tv/?field=time_add&sorder=desc'
diff --git a/sickbeard/providers/thepiratebay.py b/sickbeard/providers/thepiratebay.py
index 1ab36253a..3ea3a4be4 100644
--- a/sickbeard/providers/thepiratebay.py
+++ b/sickbeard/providers/thepiratebay.py
@@ -33,6 +33,7 @@ from sickbeard.common import Overview
 from sickbeard.exceptions import ex
 from sickbeard import encodingKludge as ek
 from lib import requests
+from lib.unidecode import unidecode
 
 proxy_dict = {
               'Getprivate.eu (NL)' : 'http://getprivate.eu/',
@@ -217,7 +218,7 @@ class ThePirateBayProvider(generic.TorrentProvider):
         for mode in search_params.keys():
             for search_string in search_params[mode]:
 
-                searchURL = self.proxy._buildURL(self.searchurl %(urllib.quote(search_string)))    
+                searchURL = self.proxy._buildURL(self.searchurl %(urllib.quote(unidecode(search_string)))) 
         
                 logger.log(u"Search string: " + searchURL, logger.DEBUG)
         
diff --git a/sickbeard/providers/torrentleech.py b/sickbeard/providers/torrentleech.py
index 49c758ab5..356b09326 100644
--- a/sickbeard/providers/torrentleech.py
+++ b/sickbeard/providers/torrentleech.py
@@ -28,7 +28,7 @@ from sickbeard.common import Overview
 from sickbeard.exceptions import ex
 from lib import requests
 from bs4 import BeautifulSoup
-
+from lib.unidecode import unidecode
 
 class TorrentLeechProvider(generic.TorrentProvider):
 
@@ -147,7 +147,7 @@ class TorrentLeechProvider(generic.TorrentProvider):
         for mode in search_params.keys():
             for search_string in search_params[mode]:
                 
-                searchURL = self.urls['search'] % (search_string, self.categories)
+                searchURL = self.urls['search'] % (unidecode(search_string), self.categories)
 
                 logger.log(u"Search string: " + searchURL, logger.DEBUG)
         
-- 
GitLab