diff options
Diffstat (limited to 'module/plugins/hoster/FilesmonsterCom.py')
-rw-r--r-- | module/plugins/hoster/FilesmonsterCom.py | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/module/plugins/hoster/FilesmonsterCom.py b/module/plugins/hoster/FilesmonsterCom.py deleted file mode 100644 index f52e01760..000000000 --- a/module/plugins/hoster/FilesmonsterCom.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -# Hoster for www.filesmonster.com -# this plugin isn't fully implemented yet,but it does download -# todo: -# detect, if reconnect is necessary -# download-error handling -# postpone download, if speed is below a set limit -# implement premium-access -# optional replace blanks in filename with underscores - -import re -import urllib -import time -from module.plugins.Hoster import Hoster - -class FilesmonsterCom(Hoster): - __name__ = "FilesmonsterCom" - __type__ = "hoster" - __pattern__ = r"http://(www.)??filesmonster.com/download.php" - __version__ = "0.1" - __description__ = """Filesmonster.com Download Hoster""" - __author_name__ = ("sitacuisses","spoob") - __author_mail__ = ("sitacuisses@yahoo.de","spoob@pyload.org") - - def __init__(self, parent): - Hoster.__init__(self, parent) - self.parent = parent - self.html = None - self.want_reconnect = False - self.multi_dl = False - self.htmlwithlink = None - self.url = None - self.filerequest = None - - def download_html(self): - self.url = self.parent.url - self.html = self.load(self.url) # get the start page - - def get_file_url(self): - """ returns the absolute downloadable filepath - """ - if self.html == None: - self.download_html() - if not self.want_reconnect: - self.get_download_page() # the complex work is done here - file_url = self.htmlwithlink - return file_url - else: - return False - - def get_file_name(self): - if self.html == None: - self.download_html() - if not self.want_reconnect: - file_name = re.search(r"File\sname:\s<span\sclass=\"em\">(.*?)</span>", self.html).group(1) - return file_name - else: - return self.parent.url - - def file_exists(self): - if self.html == None: - self.download_html() - if re.search(r"Such file does not exist or it has been removed for infringement of copyrights.", self.html) != None: - return False - else: - return True - - def get_download_page(self): - herewego = re.findall(r"<form\sid=\'slowdownload\'\smethod=\"post\"\saction=\"http://filesmonster.com/get/free/\">\s*\n\s*<input\stype=\"hidden\"\sname=\"(\S*?)\"\svalue=\"(\S*?)\"\s*>", self.html) - the_download_page = self.load("http://filesmonster.com/get/free/", None, herewego) - temporary_filtered = re.search(r"</div><form\sid=\'rtForm\'\sname=\"rtForm\"\smethod=\"post\">\s*\n(\s*<input\stype=\'hidden\'\sname=\'(\S*?)\'\svalue=\'(\S*?)\'>\s*\n)*?\s*</form>", the_download_page).group(0) - all_the_tuples = re.findall(r"<input\stype=\'hidden\'\sname=\'(\S*?)\'\svalue=\'(\S*?)\'", temporary_filtered) - time.sleep(30) - herewego = None - herewego = self.load('http://filesmonster.com/ajax.php', None, all_the_tuples) - ticket_number = re.search(r"\"text\":\"(.*?)\"\,\"error\"", herewego).group(1) - herewego = None - herewego = self.load('http://filesmonster.com/ajax.php', None, {'act': 'getdl', 'data': ticket_number}) - ticket_number = None - ticket_number = re.search(r"\"url\":\"(.*?)\"", herewego).group(1) - the_download_page = re.sub(r"\\/", r"/", ticket_number) - ticket_number = urllib.quote(the_download_page.encode('utf8')) - self.htmlwithlink = re.sub("http%3A", "http:", ticket_number) - self.filerequest = re.search(r"\"file_request\":\"(.*?)\"", herewego).group(1) - - def proceed(self, url, location): - self.download(url, location, None, {"X-File-Request": self.filerequest}) |