From 6b0c976a0dc6f55245d081ca86c070bfbdd6168c Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Sun, 10 Apr 2011 09:10:24 +0000 Subject: [PATCH] Added btdigg.org search plugin --- src/searchengine/nova/engines/btdigg.png | Bin 0 -> 692 bytes src/searchengine/nova/engines/btdigg.py | 66 +++++++++++++++++++++ src/searchengine/nova/engines/versions.txt | 1 + src/searchengine/search.qrc | 12 ++-- src/update_qrc_files.py | 5 +- 5 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 src/searchengine/nova/engines/btdigg.png create mode 100644 src/searchengine/nova/engines/btdigg.py diff --git a/src/searchengine/nova/engines/btdigg.png b/src/searchengine/nova/engines/btdigg.png new file mode 100644 index 0000000000000000000000000000000000000000..2823b9ae1ad69834125d46848676bff6e6ebf75b GIT binary patch literal 692 zcmV;l0!#ggP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipV+ z2qQ99eRr_{00J~gL_t(I%Z-vxXp(Ul$G`9E+}?}EDhOGyV{{2Zs6j+sVj(pI!9yUl z%OF^h$I&5Jbr>WJy420ZTXd>mMX*4Y1g7mYA(UJp%r*5z(fM!l_deea#$aT#&*cX{ zcs|dU=Xt_XHx(XYt_a1f0Ka;>+hXKm!IQ*r~NZM;(#-9@Mvh$1nEq=wTR_ zPbDyNa&B+}*AXX%oyX8%NQJ>j-UIdUhdgD$@QV5D_jcEHIzXGndP8Wo3n?X)>8i zG8pjfXX*z?G8T)mTCFml&oh(BaAszPu~>}3U~s>*-QMjh&;g)Qsi4#8Kt!;-yo~AT zX_%%7zu%8<>sg2>IGv8ZThdag6un+A3WWkh1dT=m>2w<7~y>Iy#C%p@4F^3|-d|3WfgJ^?;z&YSAzZlu9LNng+Mq4Z|?- azx)O#+0=-^3MYa90000 +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +import urllib +import urllib2 +import sys + +from novaprinter import prettyPrinter + +class btdigg(object): + url = 'http://btdigg.org' + name = 'BTDigg' + + supported_categories = {'all': ''} + + def __init__(self): + pass + + def search(self, what, cat='all'): + req = what.replace('+', ' ') + u = urllib2.urlopen('http://api.btdigg.org/api/public-8e9a50f8335b964f/s01?%s' % (urllib.urlencode(dict(q = req)),)) + + try: + for line in u: + if line.startswith('#'): + continue + + info_hash, name, files, size, dl, seen = line.strip().split('\t')[:6] + + res = dict(link = 'magnet:?xt=urn:btih:%s' % (info_hash,), + name = name.translate(None, '|'), + size = size, + seeds = int(dl), + leech = int(dl), + engine_url = self.url, + desc_link = 'http://btdigg.org/search?%s' % (urllib.urlencode(dict(info_hash = info_hash)),)) + + prettyPrinter(res) + finally: + u.close() + + + + +if __name__ == "__main__": + s = btdigg() + s.search(sys.argv[1]) diff --git a/src/searchengine/nova/engines/versions.txt b/src/searchengine/nova/engines/versions.txt index eebb1a6d5..67c59c5ec 100644 --- a/src/searchengine/nova/engines/versions.txt +++ b/src/searchengine/nova/engines/versions.txt @@ -7,3 +7,4 @@ vertor: 1.3 torrentdownloads: 1.1 extratorrent: 1.1 kickasstorrents: 1.2 +btdigg: 1.00 diff --git a/src/searchengine/search.qrc b/src/searchengine/search.qrc index ed1bd60df..03f94024e 100644 --- a/src/searchengine/search.qrc +++ b/src/searchengine/search.qrc @@ -6,22 +6,24 @@ nova/nova2dl.py nova/helpers.py nova/engines/vertor.png + nova/engines/kickasstorrents.png nova/engines/mininova.png nova/engines/mininova.py nova/engines/torrentdownloads.png nova/engines/isohunt.png nova/engines/torrentreactor.py nova/engines/btjunkie.png + nova/engines/extratorrent.py nova/engines/piratebay.py nova/engines/torrentdownloads.py nova/engines/torrentreactor.png nova/engines/isohunt.py + nova/engines/btdigg.py nova/engines/btjunkie.py + nova/engines/kickasstorrents.py + nova/engines/extratorrent.png nova/engines/piratebay.png nova/engines/vertor.py - nova/engines/extratorrent.py - nova/engines/extratorrent.png - nova/engines/kickasstorrents.py - nova/engines/kickasstorrents.png + nova/engines/btdigg.png - + \ No newline at end of file diff --git a/src/update_qrc_files.py b/src/update_qrc_files.py index fe6fae412..c4ec090be 100755 --- a/src/update_qrc_files.py +++ b/src/update_qrc_files.py @@ -45,8 +45,9 @@ lang_file.write(output) lang_file.close() # update search_engine directory +os.chdir('searchengine') search_list = [] -for root, dirs, files in os.walk('search_engine'): +for root, dirs, files in os.walk('nova/'): for file in files: if file.startswith("__"): continue @@ -65,6 +66,8 @@ search_file = open('search.qrc', 'w') search_file.write(output) search_file.close() +os.chdir('..'); + # update icons files directory icons_list = [] for root, dirs, files in os.walk('Icons'):