Laurent Bachelier 2013-06-16 12:30:57 +02:00
commit 19bf5fe391

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>. # along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.browser import BaseBrowser, BrowserHTTPNotFound, BrowserHTTPError from weboob.tools.browser import BaseBrowser, BrowserHTTPNotFound
from .pages import TorrentsPage, TorrentPage from .pages import TorrentsPage, TorrentPage
@ -27,35 +27,24 @@ __all__ = ['KickassBrowser']
class KickassBrowser(BaseBrowser): class KickassBrowser(BaseBrowser):
DOMAIN = 'kat.ph' DOMAIN = 'kickass.to'
PROTOCOL = 'https' PROTOCOL = 'https'
ENCODING = 'utf-8' ENCODING = 'utf-8'
USER_AGENT = BaseBrowser.USER_AGENTS['wget'] USER_AGENT = BaseBrowser.USER_AGENTS['wget']
PAGES = { PAGES = {
'https://kat.ph/usearch/.*field=seeders&sorder=desc': TorrentsPage, 'https://kickass.to/usearch/.*field=seeders&sorder=desc': TorrentsPage,
'https://kat.ph/.*.html': TorrentPage, 'https://kickass.to/.*.html': TorrentPage,
'https://ka.tt/usearch/.*field=seeders&sorder=desc': TorrentsPage,
'https://ka.tt/.*.html': TorrentPage,
} }
def iter_torrents(self, pattern): def iter_torrents(self, pattern):
try: self.location('https://kickass.to/usearch/%s/?field=seeders&sorder=desc' % pattern.encode('utf-8'))
self.location('https://ka.tt/usearch/%s/?field=seeders&sorder=desc' % pattern.encode('utf-8'))
except BrowserHTTPError:
self.location('https://kat.ph/usearch/%s/?field=seeders&sorder=desc' % pattern.encode('utf-8'))
assert self.is_on_page(TorrentsPage) assert self.is_on_page(TorrentsPage)
return self.page.iter_torrents() return self.page.iter_torrents()
def get_torrent(self, id): def get_torrent(self, id):
try: try:
try: self.location('https://kickass.to/%s.html' % id)
self.location('https://ka.tt/%s.html' % id) except BrowserHTTPNotFound:
except BrowserHTTPNotFound: return
return
except BrowserHTTPError:
try:
self.location('https://kat.ph/%s.html' % id)
except BrowserHTTPNotFound:
return
if self.is_on_page(TorrentPage): if self.is_on_page(TorrentPage):
return self.page.get_torrent(id) return self.page.get_torrent(id)