From 50d8f8eb043cd13e83c6f5fa1a90d2986a94cf6b Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Tue, 3 Oct 2006 18:11:24 +0000 Subject: [PATCH] - Fixed isohunt search engine --- Changelog | 1 + TODO | 3 ++- src/search_engine/nova.py | 18 ++++++++++++------ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Changelog b/Changelog index 7c105ced9..4d843fb5d 100644 --- a/Changelog +++ b/Changelog @@ -26,6 +26,7 @@ - BUGFIX: Fixed possible segfault on loading due to columns size loading - BUGFIX: Fixed problems that could happen with delete selection action - BUGFIX: Fixed an arithmetic exception that could happen in ETA calculation + - BUGFIX: Fixed Isohunt search engine - COSMETIC: Now displaying the number of downloads in tab title - COSMETIC: Redesigned download from url dialog - COSMETIC: Added a message to warn user that we started download from an url diff --git a/TODO b/TODO index a04281bad..f594a2098 100644 --- a/TODO +++ b/TODO @@ -33,5 +33,6 @@ // Before 0.7.0 - Test tracker authentication -- Wait for libtorrent v0.11 final release +- Wait for libtorrent v0.11rc release +- Test & fix search engines (especially DownloadFromUrl) diff --git a/src/search_engine/nova.py b/src/search_engine/nova.py index 1a7cc5cbc..86ace82ba 100755 --- a/src/search_engine/nova.py +++ b/src/search_engine/nova.py @@ -1,5 +1,9 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +# Version: 1.8 +# Changelog: +# - Fixed links from isohunt + # Version: 1.7 # Changelog: # - merged with qbittorrent branch (code cleanup, indentation mistakes) @@ -341,12 +345,13 @@ class Isohunt(object): def start_tr(self, attr): params = dict(attr) if 'onclick' in params: - Durl='http://isohunt.com/dl.php?id=' + Durl='http://isohunt.com/download' self.current_item = {} self.td_counter = 0 - begin_id = params['onclick'].find("id=")+3 - end_id = params['onclick'][begin_id:].find("'") - self.current_item['link'] = '%s%s'%(Durl,str(params['onclick'][begin_id:begin_id+end_id])) + try: + self.current_item['link'] = '%s/%s'%(Durl, params['onclick'].split('/')[2]) + except IndexError: + self.current_item['link'] = None def handle_data(self, data): if self.td_counter == 3: @@ -379,8 +384,9 @@ class Isohunt(object): self.current_item['seeds'] = 0 if not self.current_item.has_key('leech') or not self.current_item['leech'].isdigit(): self.current_item['leech'] = 0 - prettyPrinter(self.current_item) - self.results.append('a') + if self.current_item['link'] is not None: + prettyPrinter(self.current_item) + self.results.append('a') def __init__(self): self.results = []