diff --git a/nova3/engines/leetx.py b/nova3/engines/leetx.py deleted file mode 100644 index 790890e..0000000 --- a/nova3/engines/leetx.py +++ /dev/null @@ -1,164 +0,0 @@ -#VERSION: 2.3 -#AUTHORS: Vikas Yadav (https://github.com/v1k45 | http://v1k45.com) -#CONTRIBUTORS: Diego de las Heras (ngosang@hotmail.es) - -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# * Redistributions of source code must retain the above copyright notice, -# this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the author nor the names of its contributors may be -# used to endorse or promote products derived from this software without -# specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -import re -from html.parser import HTMLParser - -from helpers import retrieve_url -from novaprinter import prettyPrinter - - -class leetx(object): - url = "https://1337x.to" - name = "1337x" - supported_categories = { - 'all': 'All', - 'movies': 'Movies', - 'tv': 'TV', - 'music': 'Music', - 'games': 'Games', - 'anime': 'Anime', - 'software': 'Apps' - } - - class MyHtmlParser(HTMLParser): - A, TABLE, TR, TD, SPAN = ('a', 'table', 'tr', 'td', 'span') - - """ Sub-class for parsing results """ - def __init__(self, results, url): - HTMLParser.__init__(self) - self.results = results - self.url = url - - self.current_result = {} - self.current_item = None - self.inside_table = False - self.inside_row = False - - def handle_starttag(self, tag, attrs): - # are we inside the results table body or not - # if we are not inside the table, no need to process any further - self.inside_table = self.inside_table or tag == self.TABLE - if not self.inside_table: - return - - # convert attrs tuple to dictionary - attrs = dict(attrs) - - # for torrent name and link - link = attrs.get('href', '') - if tag == self.A and link.startswith('/torrent'): - self.current_result['link'] = self.url + link - self.current_result['desc_link'] = self.url + link - self.current_result['engine_url'] = self.url - self.current_item = 'name' - - # to ignore uploader name attached to the torrent size in span tag - if tag == self.SPAN: - self.current_item = None - - # if this is a