diff --git a/sickbeard/providers/iptorrents.py b/sickbeard/providers/iptorrents.py index 1a7298bfff8d2564dc9c6b38977f92293b28b41f..60ad854037325b5564984e812ef5fc5ed7bd6960 100644 --- a/sickbeard/providers/iptorrents.py +++ b/sickbeard/providers/iptorrents.py @@ -26,6 +26,7 @@ from sickbeard import tvcache from sickbeard import show_name_helpers from sickbeard.common import Overview from sickbeard.exceptions import ex +from sickbeard import clients from lib import requests from bs4 import BeautifulSoup from lib.unidecode import unidecode @@ -225,6 +226,10 @@ class IPTorrentsProvider(generic.TorrentProvider): logger.log(u"Error loading " + self.name + " URL: " + ex(e), logger.ERROR) return None + if r.status_code != 200: + logger.log(self.name + u" page requested with url " + url +" returned status code is" + str(r.status_code) + ': ' + clients.http_error_code[r.status_code], logger.WARNING) + return None + return response.content class IPTorrentsCache(tvcache.TVCache): diff --git a/sickbeard/providers/kat.py b/sickbeard/providers/kat.py index 59e44187922a4d01d88c862123fdcbf5aa1998a6..0c521cb96e37f48ad57be7777508540be851f4e8 100644 --- a/sickbeard/providers/kat.py +++ b/sickbeard/providers/kat.py @@ -32,6 +32,7 @@ from sickbeard import helpers from sickbeard.show_name_helpers import allPossibleShowNames, sanitizeSceneName from sickbeard.exceptions import ex from sickbeard import encodingKludge as ek +from sickbeard import clients from lib import requests from bs4 import BeautifulSoup @@ -104,7 +105,7 @@ class KATProvider(generic.TorrentProvider): return None try: - soup = BeautifulSoup(data) + soup = BeautifulSoup(data, features=["html5lib", "permissive"]) file_table = soup.find('table', attrs = {'class': 'torrentFileList'}) if not file_table: @@ -283,12 +284,12 @@ class KATProvider(generic.TorrentProvider): try: r = requests.get(url) - except Exception, e: + except (requests.exceptions.ConnectionError, requests.exceptions.HTTPError), e: logger.log(u"Error loading "+self.name+" URL: " + str(sys.exc_info()) + " - " + ex(e), logger.ERROR) return None if r.status_code != 200: - logger.log(u"KAT page requested " + url +" returned status code " + str(r.status_code), logger.DEBUG) + logger.log(self.name + u" page requested with url " + url +" returned status code is" + str(r.status_code) + ': ' + clients.http_error_code[r.status_code], logger.WARNING) return None return r.content @@ -327,23 +328,6 @@ class KATProvider(generic.TorrentProvider): logger.log(u"Saved magnet link to " + magnetFileName + " ", logger.MESSAGE) return True - def dumpHTML(self, data): - - import datetime - - fileName = 'KAT_' + datetime.datetime.now().strftime("%y%m%d_%H%M%S") + '.html' - dumpName = ek.ek(os.path.join, sickbeard.CACHE_DIR, fileName) - - try: - fileOut = open(dumpName, 'wb') - fileOut.write(data) - fileOut.close() - helpers.chmodAsParent(dumpName) - except IOError, e: - logger.log("Unable to save the file: " + ex(e), logger.ERROR) - return False - logger.log(u"Saved kat html dump " + dumpName, logger.MESSAGE) - return True class KATCache(tvcache.TVCache): diff --git a/sickbeard/providers/torrentleech.py b/sickbeard/providers/torrentleech.py index 759d37596c32fb1438be3c3ff4466e48757e2174..4637d3b6067f614ada9da8d6fb80923d20a0c09d 100644 --- a/sickbeard/providers/torrentleech.py +++ b/sickbeard/providers/torrentleech.py @@ -26,6 +26,7 @@ from sickbeard import tvcache from sickbeard import show_name_helpers from sickbeard.common import Overview from sickbeard.exceptions import ex +from sickbeard import clients from lib import requests from bs4 import BeautifulSoup from lib.unidecode import unidecode @@ -219,6 +220,10 @@ class TorrentLeechProvider(generic.TorrentProvider): logger.log(u"Error loading "+self.name+" URL: " + ex(e), logger.ERROR) return None + if r.status_code != 200: + logger.log(self.name + u" page requested with url " + url +" returned status code is" + str(r.status_code) + ': ' + clients.http_error_code[r.status_code], logger.WARNING) + return None + return response.content class TorrentLeechCache(tvcache.TVCache):