diff options
author | Walter Purcaro <vuolter@gmail.com> | 2014-10-07 19:54:24 +0200 |
---|---|---|
committer | Walter Purcaro <vuolter@gmail.com> | 2014-10-07 19:54:24 +0200 |
commit | be459e0b409dcd5e04edd75be374bd35d4018e9a (patch) | |
tree | 3f73e813d20608ff0d23eada8214a5124c85bff5 /pyload/plugins/hoster | |
parent | Merge branch 'stable' into 0.4.10 (diff) | |
parent | New __authors__ key replaces __author_name__ and __author_mail__ + Whitespace... (diff) | |
download | pyload-be459e0b409dcd5e04edd75be374bd35d4018e9a.tar.xz |
Merge branch 'stable' into 0.4.10
Conflicts:
module/plugins/internal/CaptchaService.py
pyload/plugins/account/EasybytezCom.py
pyload/plugins/account/TusfilesNet.py
pyload/plugins/base/OCR.py
pyload/plugins/crypter/MultiuploadCom.py
pyload/plugins/crypter/UploadableChFolder.py
pyload/plugins/hoster/DuploadOrg.py
pyload/plugins/hoster/EpicShareNet.py
pyload/plugins/hoster/LemUploadsCom.py
pyload/plugins/hoster/LoadTo.py
pyload/plugins/hoster/LomafileCom.py
pyload/plugins/hoster/MegaFilesSe.py
pyload/plugins/hoster/MegareleaseOrg.py
pyload/plugins/hoster/PandaPlanet.py
pyload/plugins/hoster/PotloadCom.py
pyload/plugins/hoster/PremiumTo.py
pyload/plugins/hoster/TurbobitNet.py
pyload/plugins/internal/DeadCrypter.py
pyload/plugins/internal/DeadHoster.py
pyload/plugins/internal/SimpleCrypter.py
pyload/plugins/internal/UpdateManager.py
pyload/plugins/ocr/LinksaveIn.py
Diffstat (limited to 'pyload/plugins/hoster')
165 files changed, 374 insertions, 480 deletions
diff --git a/pyload/plugins/hoster/AlldebridCom.py b/pyload/plugins/hoster/AlldebridCom.py index 75257f401..331f5c2bb 100644 --- a/pyload/plugins/hoster/AlldebridCom.py +++ b/pyload/plugins/hoster/AlldebridCom.py @@ -18,8 +18,7 @@ class AlldebridCom(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?alldebrid\..*' __description__ = """Alldebrid.com hoster plugin""" - __author_name__ = "Andy Voigt" - __author_mail__ = "spamsales@online.de" + __authors__ = [("Andy Voigt", "spamsales@online.de")] def getFilename(self, url): @@ -78,8 +77,8 @@ class AlldebridCom(Hoster): self.download(new_url, disposition=True) - check = self.checkDownload({"error": "<title>An error occured while processing your request</title>", - "empty": re.compile(r"^$")}) + check = self.checkDownload({'error': "<title>An error occured while processing your request</title>", + 'empty': re.compile(r"^$")}) if check == "error": self.retry(wait_time=60, reason="An error occured while generating link.") diff --git a/pyload/plugins/hoster/BasePlugin.py b/pyload/plugins/hoster/BasePlugin.py index 75780b864..1973c45be 100644 --- a/pyload/plugins/hoster/BasePlugin.py +++ b/pyload/plugins/hoster/BasePlugin.py @@ -18,8 +18,7 @@ class BasePlugin(Hoster): __pattern__ = r'^unmatchable$' __description__ = """Base Plugin when any other didnt fit""" - __author_name__ = "RaNaN" - __author_mail__ = "RaNaN@pyload.org" + __authors__ = [("RaNaN", "RaNaN@pyload.org")] def setup(self): diff --git a/pyload/plugins/hoster/BayfilesCom.py b/pyload/plugins/hoster/BayfilesCom.py index 5906ade75..d5d001730 100644 --- a/pyload/plugins/hoster/BayfilesCom.py +++ b/pyload/plugins/hoster/BayfilesCom.py @@ -16,8 +16,9 @@ class BayfilesCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?bayfiles\.(com|net)/file/(?P<ID>[a-zA-Z0-9]+/[a-zA-Z0-9]+/[^/]+)' __description__ = """Bayfiles.com hoster plugin""" - __author_name__ = ("zoidberg", "Walter Purcaro") - __author_mail__ = ("zoidberg@mujmail.cz", "vuolter@gmail.com") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_INFO_PATTERN = r'<p title="(?P<N>[^"]+)">[^<]*<strong>(?P<S>[0-9., ]+)(?P<U>[kKMG])i?B</strong></p>' OFFLINE_PATTERN = r'(<p>The requested file could not be found.</p>|<title>404 Not Found</title>)' diff --git a/pyload/plugins/hoster/BezvadataCz.py b/pyload/plugins/hoster/BezvadataCz.py index 8b989da67..b0a6d6af6 100644 --- a/pyload/plugins/hoster/BezvadataCz.py +++ b/pyload/plugins/hoster/BezvadataCz.py @@ -13,8 +13,8 @@ class BezvadataCz(SimpleHoster): __pattern__ = r'http://(?:www\.)?bezvadata.cz/stahnout/.*' __description__ = """BezvaData.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<p><b>Soubor: (?P<N>[^<]+)</b></p>' FILE_SIZE_PATTERN = r'<li><strong>Velikost:</strong> (?P<S>[^<]+)</li>' diff --git a/pyload/plugins/hoster/BillionuploadsCom.py b/pyload/plugins/hoster/BillionuploadsCom.py index e774cbd83..305d840dc 100644 --- a/pyload/plugins/hoster/BillionuploadsCom.py +++ b/pyload/plugins/hoster/BillionuploadsCom.py @@ -11,8 +11,7 @@ class BillionuploadsCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?billionuploads\.com/\w{12}' __description__ = """Billionuploads.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] HOSTER_NAME = "billionuploads.com" diff --git a/pyload/plugins/hoster/BitshareCom.py b/pyload/plugins/hoster/BitshareCom.py index 8896e6833..552601d21 100644 --- a/pyload/plugins/hoster/BitshareCom.py +++ b/pyload/plugins/hoster/BitshareCom.py @@ -16,8 +16,9 @@ class BitshareCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?bitshare\.com/(files/(?P<id1>[a-zA-Z0-9]+)(/(?P<name>.*?)\.html)?|\?f=(?P<id2>[a-zA-Z0-9]+))' __description__ = """Bitshare.com hoster plugin""" - __author_name__ = ("Paul King", "fragonib") - __author_mail__ = ("", "fragonib[AT]yahoo[DOT]es") + __authors__ = [("Paul King", None), + ("fragonib", "fragonib[AT]yahoo[DOT]es")] + FILE_INFO_PATTERN = r'Downloading (?P<N>.+) - (?P<S>[\d.]+) (?P<U>\w+)</h1>' OFFLINE_PATTERN = r'(>We are sorry, but the requested file was not found in our database|>Error - File not available<|The file was deleted either by the uploader, inactivity or due to copyright claim)' diff --git a/pyload/plugins/hoster/BoltsharingCom.py b/pyload/plugins/hoster/BoltsharingCom.py index 196e801e4..daebe6a3d 100644 --- a/pyload/plugins/hoster/BoltsharingCom.py +++ b/pyload/plugins/hoster/BoltsharingCom.py @@ -11,8 +11,7 @@ class BoltsharingCom(DeadHoster): __pattern__ = r'http://(?:www\.)?boltsharing.com/\w{12}' __description__ = """Boltsharing.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(BoltsharingCom) diff --git a/pyload/plugins/hoster/CatShareNet.py b/pyload/plugins/hoster/CatShareNet.py index 051ce2e99..39f25113a 100644 --- a/pyload/plugins/hoster/CatShareNet.py +++ b/pyload/plugins/hoster/CatShareNet.py @@ -14,8 +14,9 @@ class CatShareNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?catshare\.net/\w{16}' __description__ = """CatShare.net hoster plugin""" - __author_name__ = ("z00nx", "prOq", "Walter Purcaro") - __author_mail__ = ("z00nx0@gmail.com", None, "vuolter@gmail.com") + __authors__ = [("z00nx", "z00nx0@gmail.com"), + ("prOq", None), + ("Walter Purcaro", "vuolter@gmail.com")] TEXT_ENCODING = True diff --git a/pyload/plugins/hoster/CloudzerNet.py b/pyload/plugins/hoster/CloudzerNet.py index 88313acee..719b8fa50 100644 --- a/pyload/plugins/hoster/CloudzerNet.py +++ b/pyload/plugins/hoster/CloudzerNet.py @@ -11,8 +11,9 @@ class CloudzerNet(DeadHoster): __pattern__ = r'https?://(?:www\.)?(cloudzer\.net/file/|clz\.to/(file/)?)\w+' __description__ = """Cloudzer.net hoster plugin""" - __author_name__ = ("gs", "z00nx", "stickell") - __author_mail__ = ("I-_-I-_-I@web.de", "z00nx0@gmail.com", "l.stickell@yahoo.it") + __authors__ = [("gs", "I-_-I-_-I@web.de"), + ("z00nx", "z00nx0@gmail.com"), + ("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(CloudzerNet) diff --git a/pyload/plugins/hoster/CramitIn.py b/pyload/plugins/hoster/CramitIn.py index 6ca310527..e0a42611f 100644 --- a/pyload/plugins/hoster/CramitIn.py +++ b/pyload/plugins/hoster/CramitIn.py @@ -11,8 +11,7 @@ class CramitIn(XFSPHoster): __pattern__ = r'http://(?:www\.)?cramit\.in/\w{12}' __description__ = """Cramit.in hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] HOSTER_NAME = "cramit.in" diff --git a/pyload/plugins/hoster/CrockoCom.py b/pyload/plugins/hoster/CrockoCom.py index 05f460716..81566e10c 100644 --- a/pyload/plugins/hoster/CrockoCom.py +++ b/pyload/plugins/hoster/CrockoCom.py @@ -14,8 +14,8 @@ class CrockoCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?(crocko|easy-share).com/\w+' __description__ = """Crocko hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<span class="fz24">Download:\s*<strong>(?P<N>.*)' FILE_SIZE_PATTERN = r'<span class="tip1"><span class="inner">(?P<S>[^<]+)</span></span>' diff --git a/pyload/plugins/hoster/CyberlockerCh.py b/pyload/plugins/hoster/CyberlockerCh.py index 7c97deedb..a03cc72b0 100644 --- a/pyload/plugins/hoster/CyberlockerCh.py +++ b/pyload/plugins/hoster/CyberlockerCh.py @@ -11,8 +11,7 @@ class CyberlockerCh(DeadHoster): __pattern__ = r'http://(?:www\.)?cyberlocker\.ch/\w+' __description__ = """Cyberlocker.ch hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(CyberlockerCh) diff --git a/pyload/plugins/hoster/CzshareCom.py b/pyload/plugins/hoster/CzshareCom.py index f5df313f7..b39cefd70 100644 --- a/pyload/plugins/hoster/CzshareCom.py +++ b/pyload/plugins/hoster/CzshareCom.py @@ -17,8 +17,8 @@ class CzshareCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?(czshare|sdilej)\.(com|cz)/(\d+/|download.php\?).*' __description__ = """CZshare.com hoster plugin, now Sdilej.cz""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<div class="tab" id="parameters">\s*<p>\s*Cel. n.zev: <a href=[^>]*>(?P<N>[^<]+)</a>' FILE_SIZE_PATTERN = r'<div class="tab" id="category">(?:\s*<p>[^\n]*</p>)*\s*Velikost:\s*(?P<S>[0-9., ]+)(?P<U>[kKMG])i?B\s*</div>' @@ -128,13 +128,13 @@ class CzshareCom(SimpleHoster): def checkDownloadedFile(self): # check download check = self.checkDownload({ - "tempoffline": re.compile(r"^Soubor je do.*asn.* nedostupn.*$"), + "temp_offline": re.compile(r"^Soubor je do.*asn.* nedostupn.*$"), "credit": re.compile(r"^Nem.*te dostate.*n.* kredit.$"), "multi_dl": re.compile(self.MULTIDL_PATTERN), "captcha_err": "<li>Zadaný ověřovací kód nesouhlasí!</li>" }) - if check == "tempoffline": + if check == "temp_offline": self.fail("File not available - try later") if check == "credit": self.resetAccount() diff --git a/pyload/plugins/hoster/DailymotionCom.py b/pyload/plugins/hoster/DailymotionCom.py index 450b0e4c3..11b0ac583 100644 --- a/pyload/plugins/hoster/DailymotionCom.py +++ b/pyload/plugins/hoster/DailymotionCom.py @@ -47,8 +47,7 @@ class DailymotionCom(Hoster): __config__ = [("quality", "Lowest;LD 144p;LD 240p;SD 384p;HQ 480p;HD 720p;HD 1080p;Highest", "Quality", "Highest")] __description__ = """Dailymotion.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] def setup(self): diff --git a/pyload/plugins/hoster/DataHu.py b/pyload/plugins/hoster/DataHu.py index 222278b49..cacc1cae8 100644 --- a/pyload/plugins/hoster/DataHu.py +++ b/pyload/plugins/hoster/DataHu.py @@ -16,8 +16,9 @@ class DataHu(SimpleHoster): __pattern__ = r'http://(?:www\.)?data.hu/get/\w+' __description__ = """Data.hu hoster plugin""" - __author_name__ = ("crash", "stickell") - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("crash", None), + ("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = ur'<title>(?P<N>.*) \((?P<S>[^)]+)\) let\xf6lt\xe9se</title>' OFFLINE_PATTERN = ur'Az adott f\xe1jl nem l\xe9tezik' diff --git a/pyload/plugins/hoster/DataportCz.py b/pyload/plugins/hoster/DataportCz.py index 2d87397df..be3cb1498 100644 --- a/pyload/plugins/hoster/DataportCz.py +++ b/pyload/plugins/hoster/DataportCz.py @@ -11,8 +11,8 @@ class DataportCz(SimpleHoster): __pattern__ = r'http://(?:www\.)?dataport.cz/file/(.*)' __description__ = """Dataport.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<span itemprop="name">(?P<N>[^<]+)</span>' FILE_SIZE_PATTERN = r'<td class="fil">Velikost</td>\s*<td>(?P<S>[^<]+)</td>' diff --git a/pyload/plugins/hoster/DateiTo.py b/pyload/plugins/hoster/DateiTo.py index d440a7566..4a00f22aa 100644 --- a/pyload/plugins/hoster/DateiTo.py +++ b/pyload/plugins/hoster/DateiTo.py @@ -14,8 +14,8 @@ class DateiTo(SimpleHoster): __pattern__ = r'http://(?:www\.)?datei\.to/datei/(?P<ID>\w+)\.html' __description__ = """Datei.to hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'Dateiname:</td>\s*<td colspan="2"><strong>(?P<N>.*?)</' FILE_SIZE_PATTERN = r'Dateigröße:</td>\s*<td colspan="2">(?P<S>.*?)</' diff --git a/pyload/plugins/hoster/DdlstorageCom.py b/pyload/plugins/hoster/DdlstorageCom.py index 8b477ade6..2854dac13 100644 --- a/pyload/plugins/hoster/DdlstorageCom.py +++ b/pyload/plugins/hoster/DdlstorageCom.py @@ -11,8 +11,8 @@ class DdlstorageCom(DeadHoster): __pattern__ = r'https?://(?:www\.)?ddlstorage\.com/\w+' __description__ = """DDLStorage.com hoster plugin""" - __author_name__ = ("zoidberg", "stickell") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(DdlstorageCom) diff --git a/pyload/plugins/hoster/DebridItaliaCom.py b/pyload/plugins/hoster/DebridItaliaCom.py index c9332e6bb..439467cfb 100644 --- a/pyload/plugins/hoster/DebridItaliaCom.py +++ b/pyload/plugins/hoster/DebridItaliaCom.py @@ -13,8 +13,7 @@ class DebridItaliaCom(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?debriditalia\.com' __description__ = """Debriditalia.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] def setup(self): diff --git a/pyload/plugins/hoster/DepositfilesCom.py b/pyload/plugins/hoster/DepositfilesCom.py index 55cdc875f..b04aba261 100644 --- a/pyload/plugins/hoster/DepositfilesCom.py +++ b/pyload/plugins/hoster/DepositfilesCom.py @@ -16,8 +16,10 @@ class DepositfilesCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?(depositfiles\.com|dfiles\.(eu|ru))(/\w{1,3})?/files/(?P<ID>\w+)' __description__ = """Depositfiles.com hoster plugin""" - __author_name__ = ("spoob", "zoidberg", "Walter Purcaro") - __author_mail__ = ("spoob@pyload.org", "zoidberg@mujmail.cz", "vuolter@gmail.com") + __authors__ = [("spoob", "spoob@pyload.org"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_NAME_PATTERN = r'<script type="text/javascript">eval\( unescape\(\'(?P<N>.*?)\'' FILE_SIZE_PATTERN = r': <b>(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</b>' diff --git a/pyload/plugins/hoster/DlFreeFr.py b/pyload/plugins/hoster/DlFreeFr.py index 1e256368c..4440c5370 100644 --- a/pyload/plugins/hoster/DlFreeFr.py +++ b/pyload/plugins/hoster/DlFreeFr.py @@ -117,8 +117,9 @@ class DlFreeFr(SimpleHoster): __pattern__ = r'http://(?:www\.)?dl\.free\.fr/([a-zA-Z0-9]+|getfile\.pl\?file=/[a-zA-Z0-9]+)' __description__ = """Dl.free.fr hoster plugin""" - __author_name__ = ("the-razer", "zoidberg", "Toilal") - __author_mail__ = ("daniel_ AT gmx DOT net", "zoidberg@mujmail.cz", "toilal.dev@gmail.com") + __authors__ = [("the-razer", "daniel_ AT gmx DOT net"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("Toilal", "toilal.dev@gmail.com")] FILE_NAME_PATTERN = r'Fichier:</td>\s*<td[^>]*>(?P<N>[^>]*)</td>' diff --git a/pyload/plugins/hoster/DuploadOrg.py b/pyload/plugins/hoster/DuploadOrg.py index 73cd9fd42..02df654c2 100644 --- a/pyload/plugins/hoster/DuploadOrg.py +++ b/pyload/plugins/hoster/DuploadOrg.py @@ -1,22 +1,17 @@ # -*- coding: utf-8 -*- -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class DuploadOrg(XFSPHoster): +class DuploadOrg(DeadHoster): __name__ = "DuploadOrg" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'http://(?:www\.)?dupload\.org/\w{12}' __description__ = """Dupload.grg hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" - - HOSTER_NAME = "dupload.org" - - FILE_INFO_PATTERN = r'<h3[^>]*>(?P<N>.+) \((?P<S>[\d.]+) (?P<U>\w+)\)</h3>' + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(DuploadOrg) diff --git a/pyload/plugins/hoster/EasybytezCom.py b/pyload/plugins/hoster/EasybytezCom.py index d471bc80d..3385d13ad 100644 --- a/pyload/plugins/hoster/EasybytezCom.py +++ b/pyload/plugins/hoster/EasybytezCom.py @@ -11,8 +11,8 @@ class EasybytezCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?easybytez\.com/\w{12}' __description__ = """Easybytez.com hoster plugin""" - __author_name__ = ("zoidberg", "stickell") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] HOSTER_NAME = "easybytez.com" diff --git a/pyload/plugins/hoster/EdiskCz.py b/pyload/plugins/hoster/EdiskCz.py index fcb42020d..132396c8c 100644 --- a/pyload/plugins/hoster/EdiskCz.py +++ b/pyload/plugins/hoster/EdiskCz.py @@ -13,8 +13,8 @@ class EdiskCz(SimpleHoster): __pattern__ = r'http://(?:www\.)?edisk.(cz|sk|eu)/(stahni|sk/stahni|en/download)/.*' __description__ = """Edisk.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<span class="fl" title="(?P<N>[^"]+)">\s*.*?\((?P<S>[0-9.]*) (?P<U>[kKMG])i?B\)</h1></span>' OFFLINE_PATTERN = r'<h3>This file does not exist due to one of the following:</h3><ul><li>' diff --git a/pyload/plugins/hoster/EgoFilesCom.py b/pyload/plugins/hoster/EgoFilesCom.py index e5888c4f1..8ba7a8356 100644 --- a/pyload/plugins/hoster/EgoFilesCom.py +++ b/pyload/plugins/hoster/EgoFilesCom.py @@ -11,8 +11,7 @@ class EgoFilesCom(DeadHoster): __pattern__ = r'https?://(?:www\.)?egofiles\.com/\w+' __description__ = """Egofiles.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(EgoFilesCom) diff --git a/pyload/plugins/hoster/EpicShareNet.py b/pyload/plugins/hoster/EpicShareNet.py index ee315a26c..f0fe766f5 100644 --- a/pyload/plugins/hoster/EpicShareNet.py +++ b/pyload/plugins/hoster/EpicShareNet.py @@ -1,25 +1,17 @@ # -*- coding: utf-8 -*- -# -# Test links: -# BigBuckBunny_320x180.mp4 - 61.7 Mb - http://epicshare.net/fch3m2bk6ihp/BigBuckBunny_320x180.mp4.html -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class EpicShareNet(XFSPHoster): +class EpicShareNet(DeadHoster): __name__ = "EpicShareNet" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'https?://(?:www\.)?epicshare\.net/\w{12}' __description__ = """EpicShare.net hoster plugin""" - __author_name__ = "t4skforce" - __author_mail__ = "t4skforce1337[AT]gmail[DOT]com" - - HOSTER_NAME = "epicshare.net" - - FILE_NAME_PATTERN = r'<b>Password:</b></div>\s*<h2>(?P<N>[^<]+)</h2>' + __authors__ = [("t4skforce", "t4skforce1337[AT]gmail[DOT]com")] getInfo = create_getInfo(EpicShareNet) diff --git a/pyload/plugins/hoster/EuroshareEu.py b/pyload/plugins/hoster/EuroshareEu.py index d7c172594..d7d26240f 100644 --- a/pyload/plugins/hoster/EuroshareEu.py +++ b/pyload/plugins/hoster/EuroshareEu.py @@ -13,8 +13,8 @@ class EuroshareEu(SimpleHoster): __pattern__ = r'http://(?:www\.)?euroshare.(eu|sk|cz|hu|pl)/file/.*' __description__ = """Euroshare.eu hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<span style="float: left;"><strong>(?P<N>.+?)</strong> \((?P<S>.+?)\)</span>' OFFLINE_PATTERN = ur'<h2>S.bor sa nena.iel</h2>|Požadovaná stránka neexistuje!' diff --git a/pyload/plugins/hoster/ExtabitCom.py b/pyload/plugins/hoster/ExtabitCom.py index 78172ef02..ca5d934c1 100644 --- a/pyload/plugins/hoster/ExtabitCom.py +++ b/pyload/plugins/hoster/ExtabitCom.py @@ -17,8 +17,8 @@ class ExtabitCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?extabit\.com/(file|go|fid)/(?P<ID>\w+)' __description__ = """Extabit.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<th>File:</th>\s*<td class="col-fileinfo">\s*<div title="(?P<N>[^"]+)">' FILE_SIZE_PATTERN = r'<th>Size:</th>\s*<td class="col-fileinfo">(?P<S>[^<]+)</td>' diff --git a/pyload/plugins/hoster/FastixRu.py b/pyload/plugins/hoster/FastixRu.py index 7bcbec149..f2ec1a10e 100644 --- a/pyload/plugins/hoster/FastixRu.py +++ b/pyload/plugins/hoster/FastixRu.py @@ -17,8 +17,7 @@ class FastixRu(Hoster): __pattern__ = r'http://(?:www\.)?fastix\.(ru|it)/file/(?P<ID>[a-zA-Z0-9]{24})' __description__ = """Fastix hoster plugin""" - __author_name__ = "Massimo Rosamilia" - __author_mail__ = "max@spiritix.eu" + __authors__ = [("Massimo Rosamilia", "max@spiritix.eu")] def getFilename(self, url): diff --git a/pyload/plugins/hoster/FastshareCz.py b/pyload/plugins/hoster/FastshareCz.py index a5a3dece1..666efffe3 100644 --- a/pyload/plugins/hoster/FastshareCz.py +++ b/pyload/plugins/hoster/FastshareCz.py @@ -18,8 +18,10 @@ class FastshareCz(SimpleHoster): __pattern__ = r'http://(?:www\.)?fastshare\.cz/\d+/.+' __description__ = """FastShare.cz hoster plugin""" - __author_name__ = ("zoidberg", "stickell", "Walter Purcaro") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it", "vuolter@gmail.com") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_INFO_PATTERN = r'<h1 class="dwp">(?P<N>[^<]+)</h1>\s*<div class="fileinfo">\s*Size\s*: (?P<S>\d+) (?P<U>\w+),' OFFLINE_PATTERN = r'>(The file has been deleted|Requested page not found)' @@ -48,9 +50,8 @@ class FastshareCz(SimpleHoster): self.download(urljoin(baseurl, action), post={"code": captcha, "btn.x": 77, "btn.y": 18}) check = self.checkDownload({ - "paralell_dl": - "<title>FastShare.cz</title>|<script>alert\('Pres FREE muzete stahovat jen jeden soubor najednou.'\)", - "wrong_captcha": "Download for FREE" + 'paralell_dl': "<title>FastShare.cz</title>|<script>alert\('Pres FREE muzete stahovat jen jeden soubor najednou.'\)", + 'wrong_captcha': "Download for FREE" }) if check == "paralell_dl": diff --git a/pyload/plugins/hoster/File4safeCom.py b/pyload/plugins/hoster/File4safeCom.py index eb002679e..319d2b9af 100644 --- a/pyload/plugins/hoster/File4safeCom.py +++ b/pyload/plugins/hoster/File4safeCom.py @@ -15,8 +15,7 @@ class File4safeCom(XFSPHoster): __pattern__ = r'https?://(?:www\.)?file4safe\.com/\w{12}' __description__ = """File4safe.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] HOSTER_NAME = "file4safe.com" diff --git a/pyload/plugins/hoster/FileApeCom.py b/pyload/plugins/hoster/FileApeCom.py index 8c6305631..92c11e8cf 100644 --- a/pyload/plugins/hoster/FileApeCom.py +++ b/pyload/plugins/hoster/FileApeCom.py @@ -11,8 +11,7 @@ class FileApeCom(DeadHoster): __pattern__ = r'http://(?:www\.)?fileape\.com/(index\.php\?act=download\&id=|dl/)\w+' __description__ = """FileApe.com hoster plugin""" - __author_name__ = "espes" - __author_mail__ = None + __authors__ = [("espes", None)] getInfo = create_getInfo(FileApeCom) diff --git a/pyload/plugins/hoster/FileParadoxIn.py b/pyload/plugins/hoster/FileParadoxIn.py index 6aa724e79..e5830602a 100644 --- a/pyload/plugins/hoster/FileParadoxIn.py +++ b/pyload/plugins/hoster/FileParadoxIn.py @@ -13,8 +13,7 @@ class FileParadoxIn(XFSPHoster): __pattern__ = r'https?://(?:www\.)?fileparadox\.in/\w{12}' __description__ = """FileParadox.in hoster plugin""" - __author_name__ = "RazorWing" - __author_mail__ = "muppetuk1@hotmail.com" + __authors__ = [("RazorWing", "muppetuk1@hotmail.com")] HOSTER_NAME = "fileparadox.in" diff --git a/pyload/plugins/hoster/FileStoreTo.py b/pyload/plugins/hoster/FileStoreTo.py index 6a2963ec2..68e5ab2f6 100644 --- a/pyload/plugins/hoster/FileStoreTo.py +++ b/pyload/plugins/hoster/FileStoreTo.py @@ -13,8 +13,9 @@ class FileStoreTo(SimpleHoster): __pattern__ = r'http://(?:www\.)?filestore\.to/\?d=(?P<ID>\w+)' __description__ = """FileStore.to hoster plugin""" - __author_name__ = ("Walter Purcaro", "stickell") - __author_mail__ = ("vuolter@gmail.com", "l.stickell@yahoo.it") + __authors__ = [("Walter Purcaro", "vuolter@gmail.com"), + ("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = r'File: <span[^>]*>(?P<N>.+)</span><br />Size: (?P<S>[\d,.]+) (?P<U>\w+)' OFFLINE_PATTERN = r'>Download-Datei wurde nicht gefunden<' diff --git a/pyload/plugins/hoster/FilebeerInfo.py b/pyload/plugins/hoster/FilebeerInfo.py index 561660148..f272e296d 100644 --- a/pyload/plugins/hoster/FilebeerInfo.py +++ b/pyload/plugins/hoster/FilebeerInfo.py @@ -11,8 +11,7 @@ class FilebeerInfo(DeadHoster): __pattern__ = r'http://(?:www\.)?filebeer\.info/(?!\d*~f)(?P<ID>\w+).*' __description__ = """Filebeer.info plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(FilebeerInfo) diff --git a/pyload/plugins/hoster/FilecloudIo.py b/pyload/plugins/hoster/FilecloudIo.py index 93db875fe..c397a1a1a 100644 --- a/pyload/plugins/hoster/FilecloudIo.py +++ b/pyload/plugins/hoster/FilecloudIo.py @@ -15,8 +15,9 @@ class FilecloudIo(SimpleHoster): __pattern__ = r'http://(?:www\.)?(?:filecloud\.io|ifile\.it|mihd\.net)/(?P<ID>\w+).*' __description__ = """Filecloud.io hoster plugin""" - __author_name__ = ("zoidberg", "stickell") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] + FILE_SIZE_PATTERN = r'{var __ab1 = (?P<S>\d+);}' FILE_NAME_PATTERN = r'id="aliasSpan">(?P<N>.*?) <' diff --git a/pyload/plugins/hoster/FilefactoryCom.py b/pyload/plugins/hoster/FilefactoryCom.py index 03af98843..e5f1c0653 100644 --- a/pyload/plugins/hoster/FilefactoryCom.py +++ b/pyload/plugins/hoster/FilefactoryCom.py @@ -25,8 +25,8 @@ class FilefactoryCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?filefactory\.com/file/(?P<id>[a-zA-Z0-9]+)' __description__ = """Filefactory.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = r'<div id="file_name"[^>]*>\s*<h2>(?P<N>[^<]+)</h2>\s*<div id="file_info">\s*(?P<S>[\d.]+) (?P<U>\w+) uploaded' LINK_PATTERN = r'<a href="(https?://[^"]+)"[^>]*><i[^>]*></i> Download with FileFactory Premium</a>' diff --git a/pyload/plugins/hoster/FilejungleCom.py b/pyload/plugins/hoster/FilejungleCom.py index 0bbc7502e..9cfc7b481 100644 --- a/pyload/plugins/hoster/FilejungleCom.py +++ b/pyload/plugins/hoster/FilejungleCom.py @@ -12,8 +12,8 @@ class FilejungleCom(FileserveCom): __pattern__ = r'http://(?:www\.)?filejungle\.com/f/(?P<id>[^/]+).*' __description__ = """Filejungle.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + URLS = ["http://www.filejungle.com/f/", "http://www.filejungle.com/check_links.php", "http://www.filejungle.com/checkReCaptcha.php"] diff --git a/pyload/plugins/hoster/FileomCom.py b/pyload/plugins/hoster/FileomCom.py index cd2f54c35..a5ddb797c 100644 --- a/pyload/plugins/hoster/FileomCom.py +++ b/pyload/plugins/hoster/FileomCom.py @@ -14,8 +14,7 @@ class FileomCom(XFSPHoster): __pattern__ = r'https?://(?:www\.)?fileom\.com/\w{12}' __description__ = """Fileom.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] HOSTER_NAME = "fileom.com" diff --git a/pyload/plugins/hoster/FilepostCom.py b/pyload/plugins/hoster/FilepostCom.py index 133ea72d6..41674ebc8 100644 --- a/pyload/plugins/hoster/FilepostCom.py +++ b/pyload/plugins/hoster/FilepostCom.py @@ -17,8 +17,8 @@ class FilepostCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?(?:filepost\.com/files|fp.io)/([^/]+).*' __description__ = """Filepost.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<input type="text" id="url" value=\'<a href[^>]*>(?P<N>[^>]+?) - (?P<S>[0-9\.]+ [kKMG]i?B)</a>\' class="inp_text"/>' OFFLINE_PATTERN = r'class="error_msg_title"> Invalid or Deleted File. </div>|<div class="file_info file_info_deleted">' diff --git a/pyload/plugins/hoster/FilerNet.py b/pyload/plugins/hoster/FilerNet.py index 5b3a07871..71c6b5384 100644 --- a/pyload/plugins/hoster/FilerNet.py +++ b/pyload/plugins/hoster/FilerNet.py @@ -21,8 +21,8 @@ class FilerNet(SimpleHoster): __pattern__ = r'https?://(?:www\.)?filer\.net/get/(\w+)' __description__ = """Filer.net hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = r'<h1 class="page-header">Free Download (?P<N>\S+) <small>(?P<S>[\w.]+) (?P<U>\w+)</small></h1>' OFFLINE_PATTERN = r'Nicht gefunden' diff --git a/pyload/plugins/hoster/FilerioCom.py b/pyload/plugins/hoster/FilerioCom.py index 5dd0be9c9..4389a8d1a 100644 --- a/pyload/plugins/hoster/FilerioCom.py +++ b/pyload/plugins/hoster/FilerioCom.py @@ -11,8 +11,7 @@ class FilerioCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?(filerio\.(in|com)|filekeen\.com)/\w{12}' __description__ = """FileRio.in hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] HOSTER_NAME = "filerio.in" diff --git a/pyload/plugins/hoster/FilesMailRu.py b/pyload/plugins/hoster/FilesMailRu.py index a900d58b4..176799c1c 100644 --- a/pyload/plugins/hoster/FilesMailRu.py +++ b/pyload/plugins/hoster/FilesMailRu.py @@ -37,8 +37,7 @@ class FilesMailRu(Hoster): __pattern__ = r'http://(?:www\.)?files\.mail\.ru/.*' __description__ = """Files.mail.ru hoster plugin""" - __author_name__ = "oZiRiz" - __author_mail__ = "ich@oziriz.de" + __authors__ = [("oZiRiz", "ich@oziriz.de")] def setup(self): diff --git a/pyload/plugins/hoster/FileserveCom.py b/pyload/plugins/hoster/FileserveCom.py index 77c1b435f..f1969a40e 100644 --- a/pyload/plugins/hoster/FileserveCom.py +++ b/pyload/plugins/hoster/FileserveCom.py @@ -38,8 +38,11 @@ class FileserveCom(Hoster): __pattern__ = r'http://(?:www\.)?fileserve\.com/file/(?P<id>[^/]+).*' __description__ = """Fileserve.com hoster plugin""" - __author_name__ = ("jeix", "mkaay", "Paul King", "zoidberg") - __author_mail__ = ("jeix@hasnomail.de", "mkaay@mkaay.de", "", "zoidberg@mujmail.cz") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("mkaay", "mkaay@mkaay.de"), + ("Paul King", None), + ("zoidberg", "zoidberg@mujmail.cz")] + URLS = ["http://www.fileserve.com/file/", "http://www.fileserve.com/link-checker.php", "http://www.fileserve.com/checkReCaptcha.php"] diff --git a/pyload/plugins/hoster/FileshareInUa.py b/pyload/plugins/hoster/FileshareInUa.py index 83cf2dd8b..f2d1ed84b 100644 --- a/pyload/plugins/hoster/FileshareInUa.py +++ b/pyload/plugins/hoster/FileshareInUa.py @@ -15,8 +15,8 @@ class FileshareInUa(Hoster): __pattern__ = r'http://(?:www\.)?fileshare.in.ua/[A-Za-z0-9]+' __description__ = """Fileshare.in.ua hoster plugin""" - __author_name__ = "fwannmacher" - __author_mail__ = "felipe@warhammerproject.com" + __authors__ = [("fwannmacher", "felipe@warhammerproject.com")] + PATTERN_FILENAME = r'<h3 class="b-filename">(.*?)</h3>' PATTERN_FILESIZE = r'<b class="b-filesize">(.*?)</b>' diff --git a/pyload/plugins/hoster/FilezyNet.py b/pyload/plugins/hoster/FilezyNet.py index 4bd5de495..660e9c5e3 100644 --- a/pyload/plugins/hoster/FilezyNet.py +++ b/pyload/plugins/hoster/FilezyNet.py @@ -11,8 +11,7 @@ class FilezyNet(DeadHoster): __pattern__ = r'http://(?:www\.)?filezy\.net/\w{12}' __description__ = """Filezy.net hoster plugin""" - __author_name__ = None - __author_mail__ = None + __authors__ = [] getInfo = create_getInfo(FilezyNet) diff --git a/pyload/plugins/hoster/FiredriveCom.py b/pyload/plugins/hoster/FiredriveCom.py index 8bd841c8f..060b34d5d 100644 --- a/pyload/plugins/hoster/FiredriveCom.py +++ b/pyload/plugins/hoster/FiredriveCom.py @@ -13,8 +13,8 @@ class FiredriveCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?(firedrive|putlocker)\.com/(mobile/)?(file|embed)/(?P<ID>\w+)' __description__ = """Firedrive.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] + FILE_NAME_PATTERN = r'<b>Name:</b> (?P<N>.+) <br>' FILE_SIZE_PATTERN = r'<b>Size:</b> (?P<S>[\d.]+) (?P<U>[a-zA-Z]+) <br>' diff --git a/pyload/plugins/hoster/FlyFilesNet.py b/pyload/plugins/hoster/FlyFilesNet.py index d8d6efb7e..b8b392e8b 100644 --- a/pyload/plugins/hoster/FlyFilesNet.py +++ b/pyload/plugins/hoster/FlyFilesNet.py @@ -16,8 +16,7 @@ class FlyFilesNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?flyfiles\.net/.*' __description__ = """FlyFiles.net hoster plugin""" - __author_name__ = None - __author_mail__ = None + __authors__ = [] SESSION_PATTERN = r'flyfiles\.net/(.*)/.*' FILE_NAME_PATTERN = r'flyfiles\.net/.*/(.*)' diff --git a/pyload/plugins/hoster/FourSharedCom.py b/pyload/plugins/hoster/FourSharedCom.py index e2cb980a4..471ac66a2 100644 --- a/pyload/plugins/hoster/FourSharedCom.py +++ b/pyload/plugins/hoster/FourSharedCom.py @@ -13,8 +13,9 @@ class FourSharedCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?4shared(\-china)?\.com/(account/)?(download|get|file|document|photo|video|audio|mp3|office|rar|zip|archive|music)/.+?/.*' __description__ = """4Shared.com hoster plugin""" - __author_name__ = ("jeix", "zoidberg") - __author_mail__ = ("jeix@hasnomail.de", "zoidberg@mujmail.cz") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<meta name="title" content="(?P<N>.+?)"' FILE_SIZE_PATTERN = r'<span title="Size: (?P<S>[0-9,.]+) (?P<U>[kKMG])i?B">' diff --git a/pyload/plugins/hoster/FreakshareCom.py b/pyload/plugins/hoster/FreakshareCom.py index f58d72980..2405d1f35 100644 --- a/pyload/plugins/hoster/FreakshareCom.py +++ b/pyload/plugins/hoster/FreakshareCom.py @@ -15,8 +15,10 @@ class FreakshareCom(Hoster): __pattern__ = r'http://(?:www\.)?freakshare\.(net|com)/files/\S*?/' __description__ = """Freakshare.com hoster plugin""" - __author_name__ = ("sitacuisses", "spoob", "mkaay", "Toilal") - __author_mail__ = ("sitacuisses@yahoo.de", "spoob@pyload.org", "mkaay@mkaay.de", "toilal.dev@gmail.com") + __authors__ = [("sitacuisses", "sitacuisses@yahoo.de"), + ("spoob", "spoob@pyload.org"), + ("mkaay", "mkaay@mkaay.de"), + ("Toilal", "toilal.dev@gmail.com")] def setup(self): diff --git a/pyload/plugins/hoster/FreeWayMe.py b/pyload/plugins/hoster/FreeWayMe.py index 2c23ac6de..ec99f850f 100644 --- a/pyload/plugins/hoster/FreeWayMe.py +++ b/pyload/plugins/hoster/FreeWayMe.py @@ -11,8 +11,7 @@ class FreeWayMe(Hoster): __pattern__ = r'https://(?:www\.)?free-way.me/.*' __description__ = """FreeWayMe hoster plugin""" - __author_name__ = "Nicolas Giese" - __author_mail__ = "james@free-way.me" + __authors__ = [("Nicolas Giese", "james@free-way.me")] def setup(self): diff --git a/pyload/plugins/hoster/FreevideoCz.py b/pyload/plugins/hoster/FreevideoCz.py index dc7dd04bd..c2e14471d 100644 --- a/pyload/plugins/hoster/FreevideoCz.py +++ b/pyload/plugins/hoster/FreevideoCz.py @@ -11,8 +11,7 @@ class FreevideoCz(DeadHoster): __pattern__ = r'http://(?:www\.)?freevideo\.cz/vase-videa/.+' __description__ = """Freevideo.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(FreevideoCz)
\ No newline at end of file diff --git a/pyload/plugins/hoster/FshareVn.py b/pyload/plugins/hoster/FshareVn.py index 3e3632902..3ecae0394 100644 --- a/pyload/plugins/hoster/FshareVn.py +++ b/pyload/plugins/hoster/FshareVn.py @@ -32,8 +32,8 @@ class FshareVn(SimpleHoster): __pattern__ = r'http://(?:www\.)?fshare.vn/file/.*' __description__ = """FshareVn hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<p>(?P<N>[^<]+)<\\/p>[\\trn\s]*<p>(?P<S>[0-9,.]+)\s*(?P<U>[kKMG])i?B<\\/p>' OFFLINE_PATTERN = r'<div class=\\"f_left file_w\\"|<\\/p>\\t\\t\\t\\t\\r\\n\\t\\t<p><\\/p>\\t\\t\\r\\n\\t\\t<p>0 KB<\\/p>' diff --git a/pyload/plugins/hoster/Ftp.py b/pyload/plugins/hoster/Ftp.py index d51907a1a..f092bd0a4 100644 --- a/pyload/plugins/hoster/Ftp.py +++ b/pyload/plugins/hoster/Ftp.py @@ -17,8 +17,9 @@ class Ftp(Hoster): __pattern__ = r'(ftps?|sftp)://(.*?:.*?@)?.*?/.*' #: ftp://user:password@ftp.server.org/path/to/file __description__ = """Download from ftp directory""" - __author_name__ = ("jeix", "mkaay", "zoidberg") - __author_mail__ = ("jeix@hasnomail.com", "mkaay@mkaay.de", "zoidberg@mujmail.cz") + __authors__ = [("jeix", "jeix@hasnomail.com"), + ("mkaay", "mkaay@mkaay.de"), + ("zoidberg", "zoidberg@mujmail.cz")] def setup(self): diff --git a/pyload/plugins/hoster/GamefrontCom.py b/pyload/plugins/hoster/GamefrontCom.py index 2a358dff3..b19de0717 100644 --- a/pyload/plugins/hoster/GamefrontCom.py +++ b/pyload/plugins/hoster/GamefrontCom.py @@ -15,8 +15,8 @@ class GamefrontCom(Hoster): __pattern__ = r'http://(?:www\.)?gamefront.com/files/[A-Za-z0-9]+' __description__ = """Gamefront.com hoster plugin""" - __author_name__ = "fwannmacher" - __author_mail__ = "felipe@warhammerproject.com" + __authors__ = [("fwannmacher", "felipe@warhammerproject.com")] + PATTERN_FILENAME = r'<title>(.*?) | Game Front' PATTERN_FILESIZE = r'<dt>File Size:</dt>[\n\s]*<dd>(.*?)</dd>' diff --git a/pyload/plugins/hoster/GigapetaCom.py b/pyload/plugins/hoster/GigapetaCom.py index dde9cab55..08e889bb9 100644 --- a/pyload/plugins/hoster/GigapetaCom.py +++ b/pyload/plugins/hoster/GigapetaCom.py @@ -16,8 +16,8 @@ class GigapetaCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?gigapeta\.com/dl/\w+' __description__ = """GigaPeta.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<img src=".*" alt="file" />-->\s*(?P<N>.*?)\s*</td>' FILE_SIZE_PATTERN = r'<th>\s*Size\s*</th>\s*<td>\s*(?P<S>.*?)\s*</td>' diff --git a/pyload/plugins/hoster/GooIm.py b/pyload/plugins/hoster/GooIm.py index 13598a8b6..5b48087f3 100644 --- a/pyload/plugins/hoster/GooIm.py +++ b/pyload/plugins/hoster/GooIm.py @@ -16,8 +16,8 @@ class GooIm(SimpleHoster): __pattern__ = r'https?://(?:www\.)?goo\.im/.+' __description__ = """Goo.im hoster plugin""" - __author_name__ = "zapp-brannigan" - __author_mail__ = "fuerst.reinje@web.de" + __authors__ = [("zapp-brannigan", "fuerst.reinje@web.de")] + FILE_NAME_PATTERN = r'You will be redirected to .*(?P<N>[^/ ]+) in' OFFLINE_PATTERN = r'The file you requested was not found' diff --git a/pyload/plugins/hoster/HellshareCz.py b/pyload/plugins/hoster/HellshareCz.py index 5f3236876..7edba3a7d 100644 --- a/pyload/plugins/hoster/HellshareCz.py +++ b/pyload/plugins/hoster/HellshareCz.py @@ -13,8 +13,8 @@ class HellshareCz(SimpleHoster): __pattern__ = r'(http://(?:www\.)?hellshare\.(?:cz|com|sk|hu|pl)/[^?]*/\d+).*' __description__ = """Hellshare.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<h1 id="filename"[^>]*>(?P<N>[^<]+)</h1>' FILE_SIZE_PATTERN = r'<strong id="FileSize_master">(?P<S>[0-9.]*) (?P<U>[kKMG])i?B</strong>' diff --git a/pyload/plugins/hoster/HellspyCz.py b/pyload/plugins/hoster/HellspyCz.py index 68b61caf0..fabd3de35 100644 --- a/pyload/plugins/hoster/HellspyCz.py +++ b/pyload/plugins/hoster/HellspyCz.py @@ -11,8 +11,7 @@ class HellspyCz(DeadHoster): __pattern__ = r'http://(?:www\.)?(?:hellspy\.(?:cz|com|sk|hu|pl)|sciagaj.pl)(/\S+/\d+)/?.*' __description__ = """HellSpy.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(HellspyCz) diff --git a/pyload/plugins/hoster/HotfileCom.py b/pyload/plugins/hoster/HotfileCom.py index 41831342f..313547275 100644 --- a/pyload/plugins/hoster/HotfileCom.py +++ b/pyload/plugins/hoster/HotfileCom.py @@ -11,8 +11,10 @@ class HotfileCom(DeadHoster): __pattern__ = r'https?://(?:www\.)?hotfile\.com/dl/\d+/\w+' __description__ = """Hotfile.com hoster plugin""" - __author_name__ = ("sitacuisses", "spoob", "mkaay", "JoKoT3") - __author_mail__ = ("sitacuisses@yhoo.de", "spoob@pyload.org", "mkaay@mkaay.de", "jokot3@gmail.com") + __authors__ = [("sitacuisses", "sitacuisses@yhoo.de"), + ("spoob", "spoob@pyload.org"), + ("mkaay", "mkaay@mkaay.de"), + ("JoKoT3", "jokot3@gmail.com")] getInfo = create_getInfo(HotfileCom) diff --git a/pyload/plugins/hoster/HugefilesNet.py b/pyload/plugins/hoster/HugefilesNet.py index ee475c7cb..3b9f81eb0 100644 --- a/pyload/plugins/hoster/HugefilesNet.py +++ b/pyload/plugins/hoster/HugefilesNet.py @@ -14,8 +14,8 @@ class HugefilesNet(XFSPHoster): __pattern__ = r'http://(?:www\.)?hugefiles\.net/\w{12}' __description__ = """Hugefiles.net hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + HOSTER_NAME = "hugefiles.net" diff --git a/pyload/plugins/hoster/HundredEightyUploadCom.py b/pyload/plugins/hoster/HundredEightyUploadCom.py index 6b9516c66..191b9156a 100644 --- a/pyload/plugins/hoster/HundredEightyUploadCom.py +++ b/pyload/plugins/hoster/HundredEightyUploadCom.py @@ -14,8 +14,7 @@ class HundredEightyUploadCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?180upload\.com/\w{12}' __description__ = """180upload.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] HOSTER_NAME = "180upload.com" diff --git a/pyload/plugins/hoster/IFileWs.py b/pyload/plugins/hoster/IFileWs.py index 63edfec40..b0cdab64b 100644 --- a/pyload/plugins/hoster/IFileWs.py +++ b/pyload/plugins/hoster/IFileWs.py @@ -11,8 +11,7 @@ class IFileWs(DeadHoster): __pattern__ = r'http://(?:www\.)?ifile\.ws/\w{12}' __description__ = """Ifile.ws hoster plugin""" - __author_name__ = "z00nx" - __author_mail__ = "z00nx0@gmail.com" + __authors__ = [("z00nx", "z00nx0@gmail.com")] getInfo = create_getInfo(IFileWs) diff --git a/pyload/plugins/hoster/IcyFilesCom.py b/pyload/plugins/hoster/IcyFilesCom.py index 532cd094b..637136e9d 100644 --- a/pyload/plugins/hoster/IcyFilesCom.py +++ b/pyload/plugins/hoster/IcyFilesCom.py @@ -11,8 +11,7 @@ class IcyFilesCom(DeadHoster): __pattern__ = r'http://(?:www\.)?icyfiles\.com/(.*)' __description__ = """IcyFiles.com hoster plugin""" - __author_name__ = "godofdream" - __author_mail__ = "soilfiction@gmail.com" + __authors__ = [("godofdream", "soilfiction@gmail.com")] getInfo = create_getInfo(IcyFilesCom) diff --git a/pyload/plugins/hoster/IfileIt.py b/pyload/plugins/hoster/IfileIt.py index 70ab8084d..ec6a86dc7 100644 --- a/pyload/plugins/hoster/IfileIt.py +++ b/pyload/plugins/hoster/IfileIt.py @@ -15,8 +15,8 @@ class IfileIt(SimpleHoster): __pattern__ = r'^unmatchable$' __description__ = """Ifile.it""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + LINK_PATTERN = r'</span> If it doesn\'t, <a target="_blank" href="([^"]+)">' RECAPTCHA_PATTERN = r"var __recaptcha_public\s*=\s*'([^']+)';" diff --git a/pyload/plugins/hoster/IfolderRu.py b/pyload/plugins/hoster/IfolderRu.py index 4f84e6b32..3de9b2e38 100644 --- a/pyload/plugins/hoster/IfolderRu.py +++ b/pyload/plugins/hoster/IfolderRu.py @@ -13,8 +13,8 @@ class IfolderRu(SimpleHoster): __pattern__ = r'http://(?:www\.)?(?:ifolder\.ru|rusfolder\.(?:com|net|ru))/(?:files/)?(?P<ID>\d+).*' __description__ = """Ifolder.ru hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_SIZE_REPLACEMENTS = [(u'Кб', 'KB'), (u'Мб', 'MB'), (u'Гб', 'GB')] FILE_NAME_PATTERN = ur'(?:<div><span>)?Название:(?:</span>)? <b>(?P<N>[^<]+)</b><(?:/div|br)>' diff --git a/pyload/plugins/hoster/JumbofilesCom.py b/pyload/plugins/hoster/JumbofilesCom.py index d3ee9ee9b..c17a2d454 100644 --- a/pyload/plugins/hoster/JumbofilesCom.py +++ b/pyload/plugins/hoster/JumbofilesCom.py @@ -13,8 +13,8 @@ class JumbofilesCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?jumbofiles.com/(\w{12}).*' __description__ = """JumboFiles.com hoster plugin""" - __author_name__ = "godofdream" - __author_mail__ = "soilfiction@gmail.com" + __authors__ = [("godofdream", "soilfiction@gmail.com")] + FILE_INFO_PATTERN = r'<TR><TD>(?P<N>[^<]+?)\s*<small>\((?P<S>[\d.]+)\s*(?P<U>[KMG][bB])\)</small></TD></TR>' OFFLINE_PATTERN = r'Not Found or Deleted / Disabled due to inactivity or DMCA' diff --git a/pyload/plugins/hoster/Keep2shareCC.py b/pyload/plugins/hoster/Keep2shareCC.py index 9d33e17d8..7e030a685 100644 --- a/pyload/plugins/hoster/Keep2shareCC.py +++ b/pyload/plugins/hoster/Keep2shareCC.py @@ -16,8 +16,7 @@ class Keep2shareCC(SimpleHoster): __pattern__ = r'https?://(?:www\.)?(keep2share|k2s|keep2s)\.cc/file/(?P<ID>\w+)' __description__ = """Keep2share.cc hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] FILE_NAME_PATTERN = r'File: <span>(?P<N>.+)</span>' diff --git a/pyload/plugins/hoster/LemUploadsCom.py b/pyload/plugins/hoster/LemUploadsCom.py index 9545a0a28..2c77f3106 100644 --- a/pyload/plugins/hoster/LemUploadsCom.py +++ b/pyload/plugins/hoster/LemUploadsCom.py @@ -1,26 +1,17 @@ # -*- coding: utf-8 -*- -# -# Test links: -# BigBuckBunny_320x180.mp4 - 61.7 Mb - http://lemuploads.com/uwol0aly9dld -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class LemUploadsCom(XFSPHoster): +class LemUploadsCom(DeadHoster): __name__ = "LemUploadsCom" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'https?://(?:www\.)?lemuploads\.com/\w{12}' __description__ = """LemUploads.com hoster plugin""" - __author_name__ = "t4skforce" - __author_mail__ = "t4skforce1337[AT]gmail[DOT]com" - - - HOSTER_NAME = "lemuploads.com" - - FILE_NAME_PATTERN = r'<b>Password:</b></div>\s*<h2>(?P<N>[^<]+)</h2>' + __authors__ = [("t4skforce", "t4skforce1337[AT]gmail[DOT]com")] getInfo = create_getInfo(LemUploadsCom) diff --git a/pyload/plugins/hoster/LetitbitNet.py b/pyload/plugins/hoster/LetitbitNet.py index 7e01a120f..f1256f53a 100644 --- a/pyload/plugins/hoster/LetitbitNet.py +++ b/pyload/plugins/hoster/LetitbitNet.py @@ -41,8 +41,9 @@ class LetitbitNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?(letitbit|shareflare).net/download/.*' __description__ = """Letitbit.net hoster plugin""" - __author_name__ = ("zoidberg", "z00nx") - __author_mail__ = ("zoidberg@mujmail.cz", "z00nx0@gmail.com") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("z00nx", "z00nx0@gmail.com")] + FILE_URL_REPLACEMENTS = [(r"(?<=http://)([^/]+)", "letitbit.net")] diff --git a/pyload/plugins/hoster/LinksnappyCom.py b/pyload/plugins/hoster/LinksnappyCom.py index 32da0adab..ff9df1dff 100644 --- a/pyload/plugins/hoster/LinksnappyCom.py +++ b/pyload/plugins/hoster/LinksnappyCom.py @@ -16,8 +16,8 @@ class LinksnappyCom(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?linksnappy\.com' __description__ = """Linksnappy.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + SINGLE_CHUNK_HOSTERS = ('easybytez.com') diff --git a/pyload/plugins/hoster/LoadTo.py b/pyload/plugins/hoster/LoadTo.py index 8798819e3..4f5197f13 100644 --- a/pyload/plugins/hoster/LoadTo.py +++ b/pyload/plugins/hoster/LoadTo.py @@ -18,8 +18,9 @@ class LoadTo(SimpleHoster): __pattern__ = r'http://(?:www\.)?load\.to/\w+' __description__ = """Load.to hoster plugin""" - __author_name__ = ("halfman", "stickell") - __author_mail__ = ("Pulpan3@gmail.com", "l.stickell@yahoo.it") + __authors__ = [("halfman", "Pulpan3@gmail.com"), + ("stickell", "l.stickell@yahoo.it")] + FILE_NAME_PATTERN = r'<h1>(?P<N>.+)</h1>' FILE_SIZE_PATTERN = r'Size: (?P<S>[\d.]+) (?P<U>\w+)' diff --git a/pyload/plugins/hoster/LomafileCom.py b/pyload/plugins/hoster/LomafileCom.py index 2ae6973c8..8184e9393 100644 --- a/pyload/plugins/hoster/LomafileCom.py +++ b/pyload/plugins/hoster/LomafileCom.py @@ -1,61 +1,29 @@ # -*- coding: utf-8 -*- -import re +from module.plugins.hoster.XFileSharingPro import XFileSharingPro, create_getInfo -from pyload.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo - -class LomafileCom(SimpleHoster): +class LomafileCom(XFileSharingPro): __name__ = "LomafileCom" __type__ = "hoster" - __version__ = "0.2" + __version__ = "0.3" - __pattern__ = r'https?://lomafile\.com/.+/[\w\.]+' + __pattern__ = r'http://lomafile\.com/\w{12}' __description__ = """Lomafile.com hoster plugin""" - __author_name__ = "nath_schwarz" - __author_mail__ = "nathan.notwhite@gmail.com" - - FILE_NAME_PATTERN = r'Filename:[^>]*>(?P<N>[\w\.]+)' - FILE_SIZE_PATTERN = r'\((?P<S>\d+)\s(?P<U>\w+)\)' - OFFLINE_PATTERN = r'Software error' - - - def handleFree(self): - for _ in xrange(3): - captcha_id = re.search(r'src="http://lomafile\.com/captchas/(?P<id>\w+)\.jpg"', self.html) - if not captcha_id: - self.parseError("Unable to parse captcha id.") - else: - captcha_id = captcha_id.group("id") - - form_id = re.search(r'name="id" value="(?P<id>\w+)"', self.html) - if not form_id: - self.parseError("Unable to parse form id") - else: - form_id = form_id.group("id") - - captcha = self.decryptCaptcha("http://lomafile.com/captchas/" + captcha_id + ".jpg") - - self.wait(60) - - self.html = self.load(self.pyfile.url, post={ - "op": "download2", - "id": form_id, - "rand": captcha_id, - "code": captcha, - "down_direct": "1"}) - - download_url = re.search(r'http://[\d\.]+:\d+/d/\w+/[\w\.]+', self.html) - if download_url is None: - self.invalidCaptcha() - self.logDebug("Invalid captcha.") - else: - download_url = download_url.group(0) - self.logDebug("Download URL: %s" % download_url) - self.download(download_url) - else: - self.fail("Invalid captcha-code entered.") + __authors__ = [("nath_schwarz", "nathan.notwhite@gmail.com"), + ("guidobelix", "guidobelix@hotmail.it")] + + + HOSTER_NAME = "lomafile.com" + + FILE_NAME_PATTERN = r'<a href="http://lomafile\.com/w{12}/(?P<N>.+?)">' + FILE_SIZE_PATTERN = r'Size:</b></td><td>(?P<S>[\d.]+) (?P<U>\w+)' + + OFFLINE_PATTERN = r'>(No such file|Software error:<)' + TEMP_OFFLINE_PATTERN = r'The page may have been renamed, removed or be temporarily unavailable.<' + + CAPTCHA_URL_PATTERN = r'(http://lomafile\.com/captchas/[^"\']+)' getInfo = create_getInfo(LomafileCom) diff --git a/pyload/plugins/hoster/LuckyShareNet.py b/pyload/plugins/hoster/LuckyShareNet.py index 90af45e8d..32f1c03bf 100644 --- a/pyload/plugins/hoster/LuckyShareNet.py +++ b/pyload/plugins/hoster/LuckyShareNet.py @@ -16,8 +16,8 @@ class LuckyShareNet(SimpleHoster): __pattern__ = r'https?://(?:www\.)?luckyshare.net/(?P<ID>\d{10,})' __description__ = """LuckyShare.net hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = r"<h1 class='file_name'>(?P<N>\S+)</h1>\s*<span class='file_size'>Filesize: (?P<S>[\d.]+)(?P<U>\w+)</span>" OFFLINE_PATTERN = r'There is no such file available' diff --git a/pyload/plugins/hoster/MediafireCom.py b/pyload/plugins/hoster/MediafireCom.py index 8b882e952..f8b204d2f 100644 --- a/pyload/plugins/hoster/MediafireCom.py +++ b/pyload/plugins/hoster/MediafireCom.py @@ -52,8 +52,9 @@ class MediafireCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?mediafire\.com/(file/|(view/?|download.php)?\?)(\w{11}|\w{15})($|/)' __description__ = """Mediafire.com hoster plugin""" - __author_name__ = ("zoidberg", "stickell") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] + LINK_PATTERN = r'<div class="download_link"[^>]*(?:z-index:(?P<zindex>\d+))?[^>]*>\s*<a href="(?P<href>http://[^"]+)"' JS_KEY_PATTERN = r"DoShow\('mfpromo1'\);[^{]*{((\w+)='';.*?)eval\(\2\);" diff --git a/pyload/plugins/hoster/MegaDebridEu.py b/pyload/plugins/hoster/MegaDebridEu.py index 82fde28e9..79a42b1cb 100644 --- a/pyload/plugins/hoster/MegaDebridEu.py +++ b/pyload/plugins/hoster/MegaDebridEu.py @@ -16,8 +16,8 @@ class MegaDebridEu(Hoster): __pattern__ = r'^https?://(?:w{3}\d+\.mega-debrid.eu|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/download/file/[^/]+/.+$' __description__ = """mega-debrid.eu hoster plugin""" - __author_name__ = "D.Ducatel" - __author_mail__ = "dducatel@je-geek.fr" + __authors__ = [("D.Ducatel", "dducatel@je-geek.fr")] + API_URL = "https://www.mega-debrid.eu/api.php" diff --git a/pyload/plugins/hoster/MegaFilesSe.py b/pyload/plugins/hoster/MegaFilesSe.py index 67086b068..e5b10f6e1 100644 --- a/pyload/plugins/hoster/MegaFilesSe.py +++ b/pyload/plugins/hoster/MegaFilesSe.py @@ -1,23 +1,17 @@ # -*- coding: utf-8 -*- -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class MegaFilesSe(XFSPHoster): +class MegaFilesSe(DeadHoster): __name__ = "MegaFilesSe" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'http://(?:www\.)?megafiles\.se/\w{12}' __description__ = """MegaFiles.se hoster plugin""" - __author_name__ = "t4skforce" - __author_mail__ = "t4skforce1337[AT]gmail[DOT]com" - - HOSTER_NAME = "megafiles.se" - - OFFLINE_PATTERN = r'><font[^>]*>File Not Found' - FILE_NAME_PATTERN = r'<div[^>]+>\s*<b>(?P<N>[^<]+)</b>\s*</div>' + __authors__ = [("t4skforce", "t4skforce1337[AT]gmail[DOT]com")] getInfo = create_getInfo(MegaFilesSe) diff --git a/pyload/plugins/hoster/MegaNz.py b/pyload/plugins/hoster/MegaNz.py index e01bc2cb7..bfe51b081 100644 --- a/pyload/plugins/hoster/MegaNz.py +++ b/pyload/plugins/hoster/MegaNz.py @@ -21,8 +21,8 @@ class MegaNz(Hoster): __pattern__ = r'https?://([a-z0-9]+\.)?mega\.co\.nz/#!([a-zA-Z0-9!_\-]+)' __description__ = """Mega.co.nz hoster plugin""" - __author_name__ = "RaNaN" - __author_mail__ = "ranan@pyload.org" + __authors__ = [("RaNaN", "ranan@pyload.org")] + API_URL = "https://g.api.mega.co.nz/cs?id=%d" FILE_SUFFIX = ".crypted" diff --git a/pyload/plugins/hoster/MegacrypterCom.py b/pyload/plugins/hoster/MegacrypterCom.py index cdc019fdf..de47b70f6 100644 --- a/pyload/plugins/hoster/MegacrypterCom.py +++ b/pyload/plugins/hoster/MegacrypterCom.py @@ -14,8 +14,8 @@ class MegacrypterCom(MegaNz): __pattern__ = r'(https?://[a-z0-9]{0,10}\.?megacrypter\.com/[a-zA-Z0-9!_\-]+)' __description__ = """Megacrypter.com decrypter plugin""" - __author_name__ = "GonzaloSR" - __author_mail__ = "gonzalo@gonzalosr.com" + __authors__ = [("GonzaloSR", "gonzalo@gonzalosr.com")] + API_URL = "http://megacrypter.com/api" FILE_SUFFIX = ".crypted" diff --git a/pyload/plugins/hoster/MegareleaseOrg.py b/pyload/plugins/hoster/MegareleaseOrg.py index 0f853c58a..b627a8f10 100644 --- a/pyload/plugins/hoster/MegareleaseOrg.py +++ b/pyload/plugins/hoster/MegareleaseOrg.py @@ -1,23 +1,18 @@ # -*- coding: utf-8 -*- -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class MegareleaseOrg(XFSPHoster): +class MegareleaseOrg(DeadHoster): __name__ = "MegareleaseOrg" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'https?://(?:www\.)?megarelease\.org/\w{12}' __description__ = """Megarelease.org hoster plugin""" - __author_name__ = ("derek3x", "stickell") - __author_mail__ = ("derek3x@vmail.me", "l.stickell@yahoo.it") - - - HOSTER_NAME = "megarelease.org" - - FILE_INFO_PATTERN = r'<font color="red">%s/(?P<N>.+)</font> \((?P<S>[^)]+)\)</font>' % __pattern__ + __authors__ = [("derek3x", "derek3x@vmail.me"), + ("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(MegareleaseOrg) diff --git a/pyload/plugins/hoster/MegasharesCom.py b/pyload/plugins/hoster/MegasharesCom.py index 36e13a531..23b5fbabc 100644 --- a/pyload/plugins/hoster/MegasharesCom.py +++ b/pyload/plugins/hoster/MegasharesCom.py @@ -10,21 +10,22 @@ from pyload.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class MegasharesCom(SimpleHoster): __name__ = "MegasharesCom" __type__ = "hoster" - __version__ = "0.24" + __version__ = "0.25" - __pattern__ = r'http://(?:www\.)?megashares.com/.*' + __pattern__ = r'http://(?:www\.)?(d\d{2}\.)?megashares\.com/((index.php)?\?d\d{2}=|dl/)\w+' __description__ = """Megashares.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<h1 class="black xxl"[^>]*title="(?P<N>[^"]+)">' - FILE_SIZE_PATTERN = r'<strong><span class="black">Filesize:</span></strong> (?P<S>[0-9.]+) (?P<U>[kKMG])i?B<br />' - OFFLINE_PATTERN = r'<dd class="red">(Invalid Link Request|Link has been deleted)' + FILE_SIZE_PATTERN = r'<strong><span class="black">Filesize:</span></strong> (?P<S>[\d.]+) (?P<U>\w+)' + OFFLINE_PATTERN = r'<dd class="red">(Invalid Link Request|Link has been deleted|Invalid link)' LINK_PATTERN = r'<div id="show_download_button_%d"[^>]*>\s*<a href="([^"]+)">' - PASSPORT_LEFT_PATTERN = r'Your Download Passport is: <[^>]*>(\w+).*\s*You have\s*<[^>]*>\s*([0-9.]+) ([kKMG]i?B)' - PASSPORT_RENEW_PATTERN = r'Your download passport will renew in\s*<strong>(\d+)</strong>:<strong>(\d+)</strong>:<strong>(\d+)</strong>' + + PASSPORT_LEFT_PATTERN = r'Your Download Passport is: <[^>]*>(\w+).*?You have.*?<[^>]*>.*?([\d.]+) (\w+)' + PASSPORT_RENEW_PATTERN = r'Your download passport will renew(?:.|\n)*?(\d+).*?(\d+).*?(\d+)' REACTIVATE_NUM_PATTERN = r'<input[^>]*id="random_num" value="(\d+)" />' REACTIVATE_PASSPORT_PATTERN = r'<input[^>]*id="passport_num" value="(\w+)" />' REQUEST_URI_PATTERN = r'var request_uri = "([^"]+)";' @@ -35,9 +36,11 @@ class MegasharesCom(SimpleHoster): self.resumeDownload = True self.multiDL = self.premium + def handlePremium(self): self.handleDownload(True) + def handleFree(self): self.html = self.load(self.pyfile.url, decode=True) @@ -45,10 +48,7 @@ class MegasharesCom(SimpleHoster): self.retry(wait_time=5 * 60) self.getFileInfo() - # if self.pyfile.size > 576716800: - # self.fail("This file is too large for free download") - # Reactivate passport if needed m = re.search(self.REACTIVATE_PASSPORT_PATTERN, self.html) if m: passport_num = m.group(1) @@ -76,20 +76,22 @@ class MegasharesCom(SimpleHoster): self.fail("Failed to reactivate passport") # Check traffic left on passport - m = re.search(self.PASSPORT_LEFT_PATTERN, self.html) + m = re.search(self.PASSPORT_LEFT_PATTERN, self.html, re.M | re.S) if m is None: self.fail('Passport not found') self.logInfo("Download passport: %s" % m.group(1)) - data_left = float(m.group(2)) * 1024 ** {'KB': 1, 'MB': 2, 'GB': 3}[m.group(3)] + data_left = float(m.group(2)) * 1024 ** {'B': 0, 'KB': 1, 'MB': 2, 'GB': 3}[m.group(3)] self.logInfo("Data left: %s %s (%d MB needed)" % (m.group(2), m.group(3), self.pyfile.size / 1048576)) if not data_left: m = re.search(self.PASSPORT_RENEW_PATTERN, self.html) - renew = m.group(1) + m.group(2) + m.group(3) * 60 * 60 if m else 10 * 60 - self.retry(max_tries=15, wait_time=renew, reason="Unable to get passport") + renew = int(m.group(1) + 60 * (m.group(2) + 60 * m.group(3))) if found else 600 + self.logDebug('Waiting %d seconds for a new passport' % renew) + self.retry(wait_time=renew, reason="Passport renewal") self.handleDownload(False) + def handleDownload(self, premium=False): # Find download link; m = re.search(self.LINK_PATTERN % (1 if premium else 2), self.html) diff --git a/pyload/plugins/hoster/MovReelCom.py b/pyload/plugins/hoster/MovReelCom.py index f31e27bd1..07a54a27c 100644 --- a/pyload/plugins/hoster/MovReelCom.py +++ b/pyload/plugins/hoster/MovReelCom.py @@ -11,8 +11,7 @@ class MovReelCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?movreel\.com/\w{12}' __description__ = """MovReel.com hoster plugin""" - __author_name__ = "JorisV83" - __author_mail__ = "jorisv83-pyload@yahoo.com" + __authors__ = [("JorisV83", "jorisv83-pyload@yahoo.com")] HOSTER_NAME = "movreel.com" diff --git a/pyload/plugins/hoster/MultishareCz.py b/pyload/plugins/hoster/MultishareCz.py index 819478659..3d9afa392 100644 --- a/pyload/plugins/hoster/MultishareCz.py +++ b/pyload/plugins/hoster/MultishareCz.py @@ -15,8 +15,8 @@ class MultishareCz(SimpleHoster): __pattern__ = r'http://(?:www\.)?multishare.cz/stahnout/(?P<ID>\d+).*' __description__ = """MultiShare.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = ur'(?:<li>Název|Soubor): <strong>(?P<N>[^<]+)</strong><(?:/li><li|br)>Velikost: <strong>(?P<S>[^<]+)</strong>' OFFLINE_PATTERN = ur'<h1>Stáhnout soubor</h1><p><strong>Požadovaný soubor neexistuje.</strong></p>' diff --git a/pyload/plugins/hoster/MyfastfileCom.py b/pyload/plugins/hoster/MyfastfileCom.py index b3ef02186..219cee92f 100644 --- a/pyload/plugins/hoster/MyfastfileCom.py +++ b/pyload/plugins/hoster/MyfastfileCom.py @@ -14,8 +14,8 @@ class MyfastfileCom(Hoster): __pattern__ = r'http://(?:www\.)?\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/dl/' __description__ = """Myfastfile.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] + def setup(self): diff --git a/pyload/plugins/hoster/MyvideoDe.py b/pyload/plugins/hoster/MyvideoDe.py index 556444708..bf96014f9 100644 --- a/pyload/plugins/hoster/MyvideoDe.py +++ b/pyload/plugins/hoster/MyvideoDe.py @@ -14,8 +14,7 @@ class MyvideoDe(Hoster): __pattern__ = r'http://(?:www\.)?myvideo.de/watch/' __description__ = """Myvideo.de hoster plugin""" - __author_name__ = "spoob" - __author_mail__ = "spoob@pyload.org" + __authors__ = [("spoob", "spoob@pyload.org")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/NarodRu.py b/pyload/plugins/hoster/NarodRu.py index 6fa16362d..574135192 100644 --- a/pyload/plugins/hoster/NarodRu.py +++ b/pyload/plugins/hoster/NarodRu.py @@ -15,8 +15,8 @@ class NarodRu(SimpleHoster): __pattern__ = r'http://(?:www\.)?narod(\.yandex)?\.ru/(disk|start/[0-9]+\.\w+-narod\.yandex\.ru)/(?P<ID>\d+)/.+' __description__ = """Narod.ru hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<dt class="name">(?:<[^<]*>)*(?P<N>[^<]+)</dt>' FILE_SIZE_PATTERN = r'<dd class="size">(?P<S>\d[^<]*)</dd>' diff --git a/pyload/plugins/hoster/NetloadIn.py b/pyload/plugins/hoster/NetloadIn.py index 187d2a504..d6b1b77e2 100644 --- a/pyload/plugins/hoster/NetloadIn.py +++ b/pyload/plugins/hoster/NetloadIn.py @@ -57,8 +57,9 @@ class NetloadIn(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?netload\.in/(?:datei(.*?)(?:\.htm|/)|index.php?id=10&file_id=)' __description__ = """Netload.in hoster plugin""" - __author_name__ = ("spoob", "RaNaN", "Gregy") - __author_mail__ = ("spoob@pyload.org", "ranan@pyload.org", "gregy@gregy.cz") + __authors__ = [("spoob", "spoob@pyload.org"), + ("RaNaN", "ranan@pyload.org"), + ("Gregy", "gregy@gregy.cz")] def setup(self): diff --git a/pyload/plugins/hoster/NosuploadCom.py b/pyload/plugins/hoster/NosuploadCom.py index f620238db..e761a0504 100644 --- a/pyload/plugins/hoster/NosuploadCom.py +++ b/pyload/plugins/hoster/NosuploadCom.py @@ -13,8 +13,8 @@ class NosuploadCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?nosupload\.com/\?d=\w{12}' __description__ = """Nosupload.com hoster plugin""" - __author_name__ = "igel" - __author_mail__ = "igelkun@myopera.com" + __authors__ = [("igel", "igelkun@myopera.com")] + HOSTER_NAME = "nosupload.com" diff --git a/pyload/plugins/hoster/NovafileCom.py b/pyload/plugins/hoster/NovafileCom.py index bd7b6ec65..db5a769b3 100644 --- a/pyload/plugins/hoster/NovafileCom.py +++ b/pyload/plugins/hoster/NovafileCom.py @@ -15,8 +15,8 @@ class NovafileCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?novafile\.com/\w{12}' __description__ = """Novafile.com hoster plugin""" - __author_name__ = ("zoidberg", "stickell") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] HOSTER_NAME = "novafile.com" diff --git a/pyload/plugins/hoster/NowDownloadEu.py b/pyload/plugins/hoster/NowDownloadEu.py index 2b0dca907..11b5ea5fa 100644 --- a/pyload/plugins/hoster/NowDownloadEu.py +++ b/pyload/plugins/hoster/NowDownloadEu.py @@ -14,8 +14,9 @@ class NowDownloadEu(SimpleHoster): __pattern__ = r'http://(?:www\.)?nowdownload\.(ch|co|eu|sx)/(dl/|download\.php\?id=)(?P<ID>\w+)' __description__ = """NowDownload.ch hoster plugin""" - __author_name__ = ("godofdream", "Walter Purcaro") - __author_mail__ = ("soilfiction@gmail.com", "vuolter@gmail.com") + __authors__ = [("godofdream", "soilfiction@gmail.com"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_INFO_PATTERN = r'Downloading</span> <br> (?P<N>.*) (?P<S>[0-9,.]+) (?P<U>[kKMG])i?B </h4>' OFFLINE_PATTERN = r'(This file does not exist!)' diff --git a/pyload/plugins/hoster/OboomCom.py b/pyload/plugins/hoster/OboomCom.py index e9496b469..5ade1bd8b 100644 --- a/pyload/plugins/hoster/OboomCom.py +++ b/pyload/plugins/hoster/OboomCom.py @@ -13,13 +13,12 @@ from pyload.plugins.internal.CaptchaService import ReCaptcha class OboomCom(Hoster): __name__ = "OboomCom" __type__ = "hoster" - __version__ = "0.2" + __version__ = "0.3" __pattern__ = r'https?://(?:www\.)?oboom\.com/(#(id=|/)?)?(?P<ID>\w{8})' __description__ = """oboom.com hoster plugin""" - __author_name__ = "stanley" - __author_mail__ = "stanley.foerster@gmail.com" + __authors__ = [("stanley", "stanley.foerster@gmail.com")] RECAPTCHA_KEY = "6LdqpO0SAAAAAJGHXo63HyalP7H4qlRs_vff0kJX" @@ -89,6 +88,7 @@ class OboomCom(Hoster): self.setWait(30) self.wait() break + elif result[0] == 400: if result[1] == "incorrect-captcha-sol": self.invalidCaptcha() @@ -96,6 +96,7 @@ class OboomCom(Hoster): self.invalidCaptcha() elif result[1] == "forbidden": self.retry(5, 15 * 60, "Service unavailable") + elif result[0] == 403: if result[1] == -1: # another download is running self.setWait(15 * 60) @@ -125,7 +126,7 @@ class OboomCom(Hoster): def getDownloadTicket(self): - apiUrl = "https://api.oboom.com/1.0/dl" + apiUrl = "https://api.oboom.com/1/dl" params = {"item": self.fileId, "http_errors": 0} if self.premium: params['token'] = self.sessionToken @@ -137,5 +138,7 @@ class OboomCom(Hoster): if result[0] == 200: self.downloadDomain = result[1] self.downloadTicket = result[2] + elif result[0] == 421: + self.retry(wait_time=result[2] + 60, reason="Connection limit exceeded") else: self.fail("Could not retrieve download ticket. Error code %s" % result[0]) diff --git a/pyload/plugins/hoster/OneFichierCom.py b/pyload/plugins/hoster/OneFichierCom.py index cd304a86c..72d3917a0 100644 --- a/pyload/plugins/hoster/OneFichierCom.py +++ b/pyload/plugins/hoster/OneFichierCom.py @@ -13,9 +13,12 @@ class OneFichierCom(SimpleHoster): __pattern__ = r'https?://(?P<ID>\w+)\.(?P<HOST>(1fichier|d(es)?fichiers|pjointe)\.(com|fr|net|org)|(cjoint|mesfichiers|piecejointe|oi)\.(org|net)|tenvoi\.(com|org|net)|dl4free\.com|alterupload\.com|megadl\.fr)' __description__ = """1fichier.com hoster plugin""" - __author_name__ = ("fragonib", "the-razer", "zoidberg", "imclem", "stickell", "Elrick69") - __author_mail__ = ("fragonib[AT]yahoo[DOT]es", "daniel_ AT gmx DOT net", "zoidberg@mujmail.cz", - "imclem on github", "l.stickell@yahoo.it", "elrick69[AT]rocketmail[DOT]com") + __authors__ = [("fragonib", "fragonib[AT]yahoo[DOT]es"), + ("the-razer", "daniel_ AT gmx DOT net"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("imclem", None), + ("stickell", "l.stickell@yahoo.it"), + ("Elrick69", "elrick69[AT]rocketmail[DOT]com")] FILE_NAME_PATTERN = r'>Filename :</th>\s*<td>(?P<N>.+?)<' diff --git a/pyload/plugins/hoster/OverLoadMe.py b/pyload/plugins/hoster/OverLoadMe.py index 180e2406e..b46421d8a 100644 --- a/pyload/plugins/hoster/OverLoadMe.py +++ b/pyload/plugins/hoster/OverLoadMe.py @@ -18,8 +18,7 @@ class OverLoadMe(Hoster): __pattern__ = r'https?://.*overload\.me.*' __description__ = """Over-Load.me hoster plugin""" - __author_name__ = "marley" - __author_mail__ = "marley@over-load.me" + __authors__ = [("marley", "marley@over-load.me")] def getFilename(self, url): diff --git a/pyload/plugins/hoster/PandaPlanet.py b/pyload/plugins/hoster/PandaPlanet.py deleted file mode 100644 index 5fd565618..000000000 --- a/pyload/plugins/hoster/PandaPlanet.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# -# Test links: -# test.bin - 214 B - http://pandapla.net/pew1cz3ot586 -# BigBuckBunny_320x180.mp4 - 61.7 Mb - http://pandapla.net/tz0rgjfyyoh7 - -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo - - -class PandaPlanet(XFSPHoster): - __name__ = "PandaPlanet" - __type__ = "hoster" - __version__ = "0.01" - - __pattern__ = r'https?://(?:www\.)?pandapla\.net/\w{12}' - - __description__ = """Pandapla.net hoster plugin""" - __author_name__ = "t4skforce" - __author_mail__ = "t4skforce1337[AT]gmail[DOT]com" - - HOSTER_NAME = "pandapla.net" - - FILE_SIZE_PATTERN = r'File Size:</b>\s*</td>\s*<td[^>]*>(?P<S>[^<]+)</td>\s*</tr>' - FILE_NAME_PATTERN = r'File Name:</b>\s*</td>\s*<td[^>]*>(?P<N>[^<]+)</td>\s*</tr>' - LINK_PATTERN = r'(http://([^/]*?%s|\d+\.\d+\.\d+\.\d+)(:\d+)?(/d/|(?:/files)?/\d+/\w+/)[^"\'<]+\/(?!video\.mp4)[^"\'<]+)' % HOSTER_NAME - - -getInfo = create_getInfo(PandaPlanet) diff --git a/pyload/plugins/hoster/PornhostCom.py b/pyload/plugins/hoster/PornhostCom.py index 621f52702..b8abb2b8a 100644 --- a/pyload/plugins/hoster/PornhostCom.py +++ b/pyload/plugins/hoster/PornhostCom.py @@ -13,8 +13,7 @@ class PornhostCom(Hoster): __pattern__ = r'http://(?:www\.)?pornhost\.com/([0-9]+/[0-9]+\.html|[0-9]+)' __description__ = """Pornhost.com hoster plugin""" - __author_name__ = "jeix" - __author_mail__ = "jeix@hasnomail.de" + __authors__ = [("jeix", "jeix@hasnomail.de")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/PornhubCom.py b/pyload/plugins/hoster/PornhubCom.py index 49f519dc6..8a5fd9075 100644 --- a/pyload/plugins/hoster/PornhubCom.py +++ b/pyload/plugins/hoster/PornhubCom.py @@ -13,8 +13,7 @@ class PornhubCom(Hoster): __pattern__ = r'http://(?:www\.)?pornhub\.com/view_video\.php\?viewkey=[\w\d]+' __description__ = """Pornhub.com hoster plugin""" - __author_name__ = "jeix" - __author_mail__ = "jeix@hasnomail.de" + __authors__ = [("jeix", "jeix@hasnomail.de")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/PotloadCom.py b/pyload/plugins/hoster/PotloadCom.py index f06798dd7..ce5f832a1 100644 --- a/pyload/plugins/hoster/PotloadCom.py +++ b/pyload/plugins/hoster/PotloadCom.py @@ -1,22 +1,17 @@ # -*- coding: utf-8 -*- -from pyload.plugins.internal.XFSPHoster import XFSPHoster, create_getInfo +from module.plugins.internal.DeadHoster import DeadHoster, create_getInfo -class PotloadCom(XFSPHoster): +class PotloadCom(DeadHoster): __name__ = "PotloadCom" __type__ = "hoster" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'http://(?:www\.)?potload\.com/\w{12}' __description__ = """Potload.com hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" - - HOSTER_NAME = "potload.com" - - FILE_INFO_PATTERN = r'<h[1-6]>(?P<N>.+) \((?P<S>\d+) (?P<U>\w+)\)</h' + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(PotloadCom) diff --git a/pyload/plugins/hoster/PremiumTo.py b/pyload/plugins/hoster/PremiumTo.py index ee7da65b2..b1efdcc50 100644 --- a/pyload/plugins/hoster/PremiumTo.py +++ b/pyload/plugins/hoster/PremiumTo.py @@ -16,8 +16,9 @@ class PremiumTo(Hoster): __pattern__ = r'https?://(?:www\.)?premium\.to/.+' __description__ = """Premium.to hoster plugin""" - __author_name__ = ("RaNaN", "zoidberg", "stickell") - __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz", "l.stickell@yahoo.it") + __authors__ = [("RaNaN", "RaNaN@pyload.org"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it")] def setup(self): diff --git a/pyload/plugins/hoster/PremiumizeMe.py b/pyload/plugins/hoster/PremiumizeMe.py index cf08e810f..abd4cf698 100644 --- a/pyload/plugins/hoster/PremiumizeMe.py +++ b/pyload/plugins/hoster/PremiumizeMe.py @@ -12,8 +12,7 @@ class PremiumizeMe(Hoster): __pattern__ = None #: Since we want to allow the user to specify the list of hoster to use we let MultiHoster.coreReady __description__ = """Premiumize.me hoster plugin""" - __author_name__ = "Florian Franzen" - __author_mail__ = "FlorianFranzen@gmail.com" + __authors__ = [("Florian Franzen", "FlorianFranzen@gmail.com")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/PromptfileCom.py b/pyload/plugins/hoster/PromptfileCom.py index 4d2ac8ad6..12cb41290 100644 --- a/pyload/plugins/hoster/PromptfileCom.py +++ b/pyload/plugins/hoster/PromptfileCom.py @@ -13,8 +13,8 @@ class PromptfileCom(SimpleHoster): __pattern__ = r'https?://(?:www\.)?promptfile\.com/' __description__ = """Promptfile.com hoster plugin""" - __author_name__ = "igel" - __author_mail__ = "igelkun@myopera.com" + __authors__ = [("igel", "igelkun@myopera.com")] + FILE_INFO_PATTERN = r'<span style="[^"]*" title="[^"]*">(?P<N>.*?) \((?P<S>[\d.]+) (?P<U>\w+)\)</span>' OFFLINE_PATTERN = r'<span style="[^"]*" title="File Not Found">File Not Found</span>' diff --git a/pyload/plugins/hoster/QuickshareCz.py b/pyload/plugins/hoster/QuickshareCz.py index 4082fab44..4e42c7c85 100644 --- a/pyload/plugins/hoster/QuickshareCz.py +++ b/pyload/plugins/hoster/QuickshareCz.py @@ -15,8 +15,8 @@ class QuickshareCz(SimpleHoster): __pattern__ = r'http://(?:[^/]*\.)?quickshare.cz/stahnout-soubor/.*' __description__ = """Quickshare.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<th width="145px">Název:</th>\s*<td style="word-wrap:break-word;">(?P<N>[^<]+)</td>' FILE_SIZE_PATTERN = r'<th>Velikost:</th>\s*<td>(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</td>' diff --git a/pyload/plugins/hoster/RPNetBiz.py b/pyload/plugins/hoster/RPNetBiz.py index 5f213b330..b4982dd8d 100644 --- a/pyload/plugins/hoster/RPNetBiz.py +++ b/pyload/plugins/hoster/RPNetBiz.py @@ -14,8 +14,7 @@ class RPNetBiz(Hoster): __description__ = """RPNet.biz hoster plugin""" __pattern__ = r'https?://.*rpnet\.biz' - __author_name__ = "Dman" - __author_mail__ = "dmanugm@gmail.com" + __authors__ = [("Dman", "dmanugm@gmail.com")] def setup(self): diff --git a/pyload/plugins/hoster/RapidgatorNet.py b/pyload/plugins/hoster/RapidgatorNet.py index 1d84b2245..572b3e121 100644 --- a/pyload/plugins/hoster/RapidgatorNet.py +++ b/pyload/plugins/hoster/RapidgatorNet.py @@ -19,8 +19,11 @@ class RapidgatorNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?(rapidgator\.net|rg\.to)/file/\w+' __description__ = """Rapidgator.net hoster plugin""" - __author_name__ = ("zoidberg", "chrox", "stickell", "Walter Purcaro") - __author_mail__ = ("zoidberg@mujmail.cz", "", "l.stickell@yahoo.it", "vuolter@gmail.com") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("chrox", None), + ("stickell", "l.stickell@yahoo.it"), + ("Walter Purcaro", "vuolter@gmail.com")] + API_URL = "http://rapidgator.net/api/file" diff --git a/pyload/plugins/hoster/RapidshareCom.py b/pyload/plugins/hoster/RapidshareCom.py index 37547443e..afbab10c9 100644 --- a/pyload/plugins/hoster/RapidshareCom.py +++ b/pyload/plugins/hoster/RapidshareCom.py @@ -52,8 +52,9 @@ class RapidshareCom(Hoster): "Preferred Server", "None")] __description__ = """Rapidshare.com hoster plugin""" - __author_name__ = ("spoob", "RaNaN", "mkaay") - __author_mail__ = ("spoob@pyload.org", "ranan@pyload.org", "mkaay@mkaay.de") + __authors__ = [("spoob", "spoob@pyload.org"), + ("RaNaN", "ranan@pyload.org"), + ("mkaay", "mkaay@mkaay.de")] def setup(self): diff --git a/pyload/plugins/hoster/RarefileNet.py b/pyload/plugins/hoster/RarefileNet.py index cbf3639b7..c59f27d07 100644 --- a/pyload/plugins/hoster/RarefileNet.py +++ b/pyload/plugins/hoster/RarefileNet.py @@ -14,8 +14,7 @@ class RarefileNet(XFSPHoster): __pattern__ = r'http://(?:www\.)?rarefile\.net/\w{12}' __description__ = """Rarefile.net hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] HOSTER_NAME = "rarefile.net" diff --git a/pyload/plugins/hoster/RealdebridCom.py b/pyload/plugins/hoster/RealdebridCom.py index bf7f91e21..09c8d7f7e 100644 --- a/pyload/plugins/hoster/RealdebridCom.py +++ b/pyload/plugins/hoster/RealdebridCom.py @@ -19,8 +19,7 @@ class RealdebridCom(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?real-debrid\..*' __description__ = """Real-Debrid.com hoster plugin""" - __author_name__ = "Devirex Hazzard" - __author_mail__ = "naibaf_11@yahoo.de" + __authors__ = [("Devirex Hazzard", "naibaf_11@yahoo.de")] def getFilename(self, url): diff --git a/pyload/plugins/hoster/RedtubeCom.py b/pyload/plugins/hoster/RedtubeCom.py index 814fe4ad3..d874f10c9 100644 --- a/pyload/plugins/hoster/RedtubeCom.py +++ b/pyload/plugins/hoster/RedtubeCom.py @@ -14,8 +14,7 @@ class RedtubeCom(Hoster): __pattern__ = r'http://(?:www\.)?redtube\.com/\d+' __description__ = """Redtube.com hoster plugin""" - __author_name__ = "jeix" - __author_mail__ = "jeix@hasnomail.de" + __authors__ = [("jeix", "jeix@hasnomail.de")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/RehostTo.py b/pyload/plugins/hoster/RehostTo.py index 9b708a9d5..0e6af0edb 100644 --- a/pyload/plugins/hoster/RehostTo.py +++ b/pyload/plugins/hoster/RehostTo.py @@ -13,8 +13,7 @@ class RehostTo(Hoster): __pattern__ = r'https?://.*rehost.to\..*' __description__ = """Rehost.com hoster plugin""" - __author_name__ = "RaNaN" - __author_mail__ = "RaNaN@pyload.org" + __authors__ = [("RaNaN", "RaNaN@pyload.org")] def getFilename(self, url): diff --git a/pyload/plugins/hoster/RemixshareCom.py b/pyload/plugins/hoster/RemixshareCom.py index dfd7db5a0..41bba2569 100644 --- a/pyload/plugins/hoster/RemixshareCom.py +++ b/pyload/plugins/hoster/RemixshareCom.py @@ -21,8 +21,9 @@ class RemixshareCom(SimpleHoster): __pattern__ = r'https?://remixshare\.com/(download|dl)/\w+' __description__ = """Remixshare.com hoster plugin""" - __author_name__ = ("zapp-brannigan", "Walter Purcaro") - __author_mail__ = ("fuerst.reinje@web.de", "vuolter@gmail.com") + __authors__ = [("zapp-brannigan", "fuerst.reinje@web.de"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_INFO_PATTERN = r'title=\'.+?\'>(?P<N>.+?)</span><span class=\'light2\'> \((?P<S>\d+) (?P<U>\w+)\)<' OFFLINE_PATTERN = r'<h1>Ooops!<' diff --git a/pyload/plugins/hoster/RgHostNet.py b/pyload/plugins/hoster/RgHostNet.py index 0240f3a05..5db278bbf 100644 --- a/pyload/plugins/hoster/RgHostNet.py +++ b/pyload/plugins/hoster/RgHostNet.py @@ -13,8 +13,8 @@ class RgHostNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?rghost\.net/\d+(?:r=\d+)?' __description__ = """RgHost.net hoster plugin""" - __author_name__ = "z00nx" - __author_mail__ = "z00nx0@gmail.com" + __authors__ = [("z00nx", "z00nx0@gmail.com")] + FILE_INFO_PATTERN = r'<h1>\s+(<a[^>]+>)?(?P<N>[^<]+)(</a>)?\s+<small[^>]+>\s+\((?P<S>[^)]+)\)\s+</small>\s+</h1>' OFFLINE_PATTERN = r'File is deleted|this page is not found' diff --git a/pyload/plugins/hoster/RyushareCom.py b/pyload/plugins/hoster/RyushareCom.py index 3117238e8..6c08e5cd7 100644 --- a/pyload/plugins/hoster/RyushareCom.py +++ b/pyload/plugins/hoster/RyushareCom.py @@ -17,8 +17,10 @@ class RyushareCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?ryushare\.com/\w+' __description__ = """Ryushare.com hoster plugin""" - __author_name__ = ("zoidberg", "stickell", "quareevo") - __author_mail__ = ("zoidberg@mujmail.cz", "l.stickell@yahoo.it", "quareevo@arcor.de") + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it"), + ("quareevo", "quareevo@arcor.de")] + HOSTER_NAME = "ryushare.com" diff --git a/pyload/plugins/hoster/SecureUploadEu.py b/pyload/plugins/hoster/SecureUploadEu.py index 90c80e336..d6d0207e8 100644 --- a/pyload/plugins/hoster/SecureUploadEu.py +++ b/pyload/plugins/hoster/SecureUploadEu.py @@ -11,8 +11,7 @@ class SecureUploadEu(XFSPHoster): __pattern__ = r'https?://(?:www\.)?secureupload\.eu/\w{12}' __description__ = """SecureUpload.eu hoster plugin""" - __author_name__ = "z00nx" - __author_mail__ = "z00nx0@gmail.com" + __authors__ = [("z00nx", "z00nx0@gmail.com")] HOSTER_NAME = "secureupload.eu" diff --git a/pyload/plugins/hoster/SendmywayCom.py b/pyload/plugins/hoster/SendmywayCom.py index e106de9bd..71cdf804d 100644 --- a/pyload/plugins/hoster/SendmywayCom.py +++ b/pyload/plugins/hoster/SendmywayCom.py @@ -11,8 +11,7 @@ class SendmywayCom(XFSPHoster): __pattern__ = r'http://(?:www\.)?sendmyway\.com/\w{12}' __description__ = """SendMyWay hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] HOSTER_NAME = "sendmyway.com" diff --git a/pyload/plugins/hoster/SendspaceCom.py b/pyload/plugins/hoster/SendspaceCom.py index 7a0908c8d..eb7fad5cd 100644 --- a/pyload/plugins/hoster/SendspaceCom.py +++ b/pyload/plugins/hoster/SendspaceCom.py @@ -13,8 +13,8 @@ class SendspaceCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?sendspace.com/file/.*' __description__ = """Sendspace.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<h2 class="bgray">\s*<(?:b|strong)>(?P<N>[^<]+)</' FILE_SIZE_PATTERN = r'<div class="file_description reverse margin_center">\s*<b>File Size:</b>\s*(?P<S>[0-9.]+)(?P<U>[kKMG])i?B\s*</div>' diff --git a/pyload/plugins/hoster/Share4webCom.py b/pyload/plugins/hoster/Share4webCom.py index a3d92d9f4..ac8623464 100644 --- a/pyload/plugins/hoster/Share4webCom.py +++ b/pyload/plugins/hoster/Share4webCom.py @@ -12,8 +12,8 @@ class Share4webCom(UnibytesCom): __pattern__ = r'http://(?:www\.)?share4web\.com/get/\w+' __description__ = """Share4web.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + HOSTER_NAME = "share4web.com" diff --git a/pyload/plugins/hoster/Share76Com.py b/pyload/plugins/hoster/Share76Com.py index 2cd736992..ebcec3e0c 100644 --- a/pyload/plugins/hoster/Share76Com.py +++ b/pyload/plugins/hoster/Share76Com.py @@ -11,8 +11,7 @@ class Share76Com(DeadHoster): __pattern__ = r'http://(?:www\.)?share76.com/\w{12}' __description__ = """Share76.com hoster plugin""" - __author_name__ = "me" - __author_mail__ = None + __authors__ = [] getInfo = create_getInfo(Share76Com) diff --git a/pyload/plugins/hoster/ShareFilesCo.py b/pyload/plugins/hoster/ShareFilesCo.py index b75eb0740..5b7d7a863 100644 --- a/pyload/plugins/hoster/ShareFilesCo.py +++ b/pyload/plugins/hoster/ShareFilesCo.py @@ -11,8 +11,7 @@ class ShareFilesCo(DeadHoster): __pattern__ = r'http://(?:www\.)?sharefiles\.co/\w{12}' __description__ = """Sharefiles.co hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(ShareFilesCo) diff --git a/pyload/plugins/hoster/ShareRapidCom.py b/pyload/plugins/hoster/ShareRapidCom.py index d89be1ec4..0a56fa54d 100644 --- a/pyload/plugins/hoster/ShareRapidCom.py +++ b/pyload/plugins/hoster/ShareRapidCom.py @@ -27,8 +27,11 @@ class ShareRapidCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?(share|mega)rapid\.cz/soubor/\d+/.+' __description__ = """MegaRapid.cz hoster plugin""" - __author_name__ = ("MikyWoW", "zoidberg", "stickell", "Walter Purcaro") - __author_mail__ = ("mikywow@seznam.cz", "zoidberg@mujmail.cz", "l.stickell@yahoo.it", "vuolter@gmail.com") + __authors__ = [("MikyWoW", "mikywow@seznam.cz"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("stickell", "l.stickell@yahoo.it"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_NAME_PATTERN = r'<h1[^>]*><span[^>]*>(?:<a[^>]*>)?(?P<N>[^<]+)' FILE_SIZE_PATTERN = r'<td class="i">Velikost:</td>\s*<td class="h"><strong>\s*(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</strong></td>' diff --git a/pyload/plugins/hoster/SharebeesCom.py b/pyload/plugins/hoster/SharebeesCom.py index 287dbf59c..f8892b441 100644 --- a/pyload/plugins/hoster/SharebeesCom.py +++ b/pyload/plugins/hoster/SharebeesCom.py @@ -11,8 +11,7 @@ class SharebeesCom(DeadHoster): __pattern__ = r'http://(?:www\.)?sharebees.com/\w{12}' __description__ = """ShareBees hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(SharebeesCom) diff --git a/pyload/plugins/hoster/ShareonlineBiz.py b/pyload/plugins/hoster/ShareonlineBiz.py index 15898e797..d48d76018 100644 --- a/pyload/plugins/hoster/ShareonlineBiz.py +++ b/pyload/plugins/hoster/ShareonlineBiz.py @@ -44,8 +44,11 @@ class ShareonlineBiz(Hoster): __pattern__ = r'https?://(?:www\.)?(share-online\.biz|egoshare\.com)/(download.php\?id=|dl/)(?P<ID>\w+)' __description__ = """Shareonline.biz hoster plugin""" - __author_name__ = ("spoob", "mkaay", "zoidberg", "Walter Purcaro") - __author_mail__ = ("spoob@pyload.org", "mkaay@mkaay.de", "zoidberg@mujmail.cz", "vuolter@gmail.com") + __authors__ = [("spoob", "spoob@pyload.org"), + ("mkaay", "mkaay@mkaay.de"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("Walter Purcaro", "vuolter@gmail.com")] + ERROR_INFO_PATTERN = r'<p class="b">Information:</p>\s*<div>\s*<strong>(.*?)</strong>' diff --git a/pyload/plugins/hoster/ShareplaceCom.py b/pyload/plugins/hoster/ShareplaceCom.py index d5ef86ae2..f4ade5760 100644 --- a/pyload/plugins/hoster/ShareplaceCom.py +++ b/pyload/plugins/hoster/ShareplaceCom.py @@ -15,8 +15,7 @@ class ShareplaceCom(Hoster): __pattern__ = r'(http://)?(?:www\.)?shareplace\.(com|org)/\?[a-zA-Z0-9]+' __description__ = """Shareplace.com hoster plugin""" - __author_name__ = "ACCakut" - __author_mail__ = None + __authors__ = [("ACCakut", None)] def process(self, pyfile): diff --git a/pyload/plugins/hoster/ShragleCom.py b/pyload/plugins/hoster/ShragleCom.py index 0ec93fcdc..519434a4b 100644 --- a/pyload/plugins/hoster/ShragleCom.py +++ b/pyload/plugins/hoster/ShragleCom.py @@ -11,8 +11,8 @@ class ShragleCom(DeadHoster): __pattern__ = r'http://(?:www\.)?(cloudnator|shragle).com/files/(?P<ID>.*?)/' __description__ = """Cloudnator.com (Shragle.com) hoster plugin""" - __author_name__ = ("RaNaN", "zoidberg") - __author_mail__ = ("RaNaN@pyload.org", "zoidberg@mujmail.cz") + __authors__ = [("RaNaN", "RaNaN@pyload.org"), + ("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(ShragleCom) diff --git a/pyload/plugins/hoster/SimplyPremiumCom.py b/pyload/plugins/hoster/SimplyPremiumCom.py index 9a460b13e..be863e8aa 100644 --- a/pyload/plugins/hoster/SimplyPremiumCom.py +++ b/pyload/plugins/hoster/SimplyPremiumCom.py @@ -16,8 +16,7 @@ class SimplyPremiumCom(Hoster): __pattern__ = r'https?://.*(simply-premium)\.com' __description__ = """Simply-Premium.com hoster plugin""" - __author_name__ = "EvolutionClip" - __author_mail__ = "evolutionclip@live.de" + __authors__ = [("EvolutionClip", "evolutionclip@live.de")] def setup(self): diff --git a/pyload/plugins/hoster/SimplydebridCom.py b/pyload/plugins/hoster/SimplydebridCom.py index 66f7149b4..7c6e6bfb3 100644 --- a/pyload/plugins/hoster/SimplydebridCom.py +++ b/pyload/plugins/hoster/SimplydebridCom.py @@ -13,8 +13,7 @@ class SimplydebridCom(Hoster): __pattern__ = r'http://(?:www\.)?\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/sd.php/*' __description__ = """Simply-debrid.com hoster plugin""" - __author_name__ = "Kagenoshin" - __author_mail__ = "kagenoshin@gmx.ch" + __authors__ = [("Kagenoshin", "kagenoshin@gmx.ch")] def setup(self): diff --git a/pyload/plugins/hoster/SockshareCom.py b/pyload/plugins/hoster/SockshareCom.py index 36e03a5ae..766c861a1 100644 --- a/pyload/plugins/hoster/SockshareCom.py +++ b/pyload/plugins/hoster/SockshareCom.py @@ -16,8 +16,10 @@ class SockshareCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?sockshare\.com/(mobile/)?(file|embed)/(?P<ID>\w+)' __description__ = """Sockshare.com hoster plugin""" - __author_name__ = ("jeix", "stickell", "Walter Purcaro") - __author_mail__ = ("jeix@hasnomail.de", "l.stickell@yahoo.it", "vuolter@gmail.com") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("stickell", "l.stickell@yahoo.it"), + ("Walter Purcaro", "vuolter@gmail.com")] + FILE_INFO_PATTERN = r'site-content">\s*<h1>(?P<N>.+)<strong>\( (?P<S>[^)]+) \)</strong></h1>' OFFLINE_PATTERN = r'>This file doesn\'t exist, or has been removed.<' diff --git a/pyload/plugins/hoster/SoundcloudCom.py b/pyload/plugins/hoster/SoundcloudCom.py index bf8555439..d91ec03e5 100644 --- a/pyload/plugins/hoster/SoundcloudCom.py +++ b/pyload/plugins/hoster/SoundcloudCom.py @@ -14,8 +14,7 @@ class SoundcloudCom(Hoster): __pattern__ = r'https?://(?:www\.)?soundcloud\.com/(?P<UID>.*?)/(?P<SID>.*)' __description__ = """SoundCloud.com hoster plugin""" - __author_name__ = "Peekayy" - __author_mail__ = "peekayy.dev@gmail.com" + __authors__ = [("Peekayy", "peekayy.dev@gmail.com")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/SpeedLoadOrg.py b/pyload/plugins/hoster/SpeedLoadOrg.py index 74753b029..cefde2afe 100644 --- a/pyload/plugins/hoster/SpeedLoadOrg.py +++ b/pyload/plugins/hoster/SpeedLoadOrg.py @@ -11,8 +11,7 @@ class SpeedLoadOrg(DeadHoster): __pattern__ = r'http://(?:www\.)?speedload\.org/(?P<ID>\w+)' __description__ = """Speedload.org hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] getInfo = create_getInfo(SpeedLoadOrg) diff --git a/pyload/plugins/hoster/SpeedfileCz.py b/pyload/plugins/hoster/SpeedfileCz.py index 85df88d85..5919f44f7 100644 --- a/pyload/plugins/hoster/SpeedfileCz.py +++ b/pyload/plugins/hoster/SpeedfileCz.py @@ -11,8 +11,7 @@ class SpeedfileCz(DeadHoster): __pattern__ = r'http://(?:www\.)?speedfile.cz/.*' __description__ = """Speedfile.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(SpeedfileCz) diff --git a/pyload/plugins/hoster/SpeedyshareCom.py b/pyload/plugins/hoster/SpeedyshareCom.py index 5dd29dad0..edf935d59 100644 --- a/pyload/plugins/hoster/SpeedyshareCom.py +++ b/pyload/plugins/hoster/SpeedyshareCom.py @@ -18,8 +18,7 @@ class SpeedyshareCom(SimpleHoster): __pattern__ = r"https?://(?:www\.)?(speedyshare\.com|speedy\.sh)/\w+" __description__ = """Speedyshare.com hoster plugin""" - __author_name__ = "zapp-brannigan" - __author_mail__ = "fuerst.reinje@web.de" + __authors__ = [("zapp-brannigan", "fuerst.reinje@web.de")] FILE_NAME_PATTERN = r'class=downloadfilename>(?P<N>.*)</span></td>' @@ -43,8 +42,8 @@ class SpeedyshareCom(SimpleHoster): dl_link = urljoin("http://www.speedyshare.com", m.group(1)) self.download(dl_link, disposition=True) - check = self.checkDownload({'is_html': re.compile("html")}) - if check == "is_html": + check = self.checkDownload({'html': re.compile("html")}) + if check == "html": self.parseError("Downloaded file is an html file") diff --git a/pyload/plugins/hoster/StreamCz.py b/pyload/plugins/hoster/StreamCz.py index 27325e9f1..0a70e3c48 100644 --- a/pyload/plugins/hoster/StreamCz.py +++ b/pyload/plugins/hoster/StreamCz.py @@ -28,8 +28,8 @@ class StreamCz(Hoster): __pattern__ = r'https?://(?:www\.)?stream\.cz/[^/]+/\d+.*' __description__ = """Stream.cz hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<link rel="video_src" href="http://www.stream.cz/\w+/(\d+)-([^"]+)" />' OFFLINE_PATTERN = r'<h1 class="commonTitle">Str.nku nebylo mo.n. nal.zt \(404\)</h1>' diff --git a/pyload/plugins/hoster/StreamcloudEu.py b/pyload/plugins/hoster/StreamcloudEu.py index eef5cbb68..82ec94fbd 100644 --- a/pyload/plugins/hoster/StreamcloudEu.py +++ b/pyload/plugins/hoster/StreamcloudEu.py @@ -16,8 +16,7 @@ class StreamcloudEu(XFSPHoster): __pattern__ = r'http://(?:www\.)?streamcloud\.eu/\w{12}' __description__ = """Streamcloud.eu hoster plugin""" - __author_name__ = "seoester" - __author_mail__ = "seoester@googlemail.com" + __authors__ = [("seoester", "seoester@googlemail.com")] HOSTER_NAME = "streamcloud.eu" diff --git a/pyload/plugins/hoster/TurbobitNet.py b/pyload/plugins/hoster/TurbobitNet.py index cc9cf16d3..00d95366c 100644 --- a/pyload/plugins/hoster/TurbobitNet.py +++ b/pyload/plugins/hoster/TurbobitNet.py @@ -22,8 +22,8 @@ class TurbobitNet(SimpleHoster): __pattern__ = r'http://(?:www\.)?turbobit\.net/(?:download/free/)?(?P<ID>\w+)' __description__ = """Turbobit.net hoster plugin""" - __author_name__ = ("zoidberg", "prOq") - __author_mail__ = ("zoidberg@mujmail.cz", None) + __authors__ = [("zoidberg", "zoidberg@mujmail.cz"), + ("prOq", None)] FILE_NAME_PATTERN = r'id="file-title">(?P<N>.+?)<' diff --git a/pyload/plugins/hoster/TurbouploadCom.py b/pyload/plugins/hoster/TurbouploadCom.py index eb5978145..ce16ebed8 100644 --- a/pyload/plugins/hoster/TurbouploadCom.py +++ b/pyload/plugins/hoster/TurbouploadCom.py @@ -11,8 +11,7 @@ class TurbouploadCom(DeadHoster): __pattern__ = r'http://(?:www\.)?turboupload.com/(\w+).*' __description__ = """Turboupload.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(TurbouploadCom) diff --git a/pyload/plugins/hoster/TusfilesNet.py b/pyload/plugins/hoster/TusfilesNet.py index efe3d6de9..f10501250 100644 --- a/pyload/plugins/hoster/TusfilesNet.py +++ b/pyload/plugins/hoster/TusfilesNet.py @@ -11,8 +11,8 @@ class TusfilesNet(XFSPHoster): __pattern__ = r'https?://(?:www\.)?tusfiles\.net/\w{12}' __description__ = """Tusfiles.net hoster plugin""" - __author_name__ = ("Walter Purcaro", "guidobelix") - __author_mail__ = ("vuolter@gmail.com", "guidobelix@hotmail.it") + __authors__ = [("Walter Purcaro", "vuolter@gmail.com"), + ("guidobelix", "guidobelix@hotmail.it")] HOSTER_NAME = "tusfiles.net" diff --git a/pyload/plugins/hoster/TwoSharedCom.py b/pyload/plugins/hoster/TwoSharedCom.py index 108d31c6f..86f02f0b6 100644 --- a/pyload/plugins/hoster/TwoSharedCom.py +++ b/pyload/plugins/hoster/TwoSharedCom.py @@ -13,8 +13,8 @@ class TwoSharedCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?2shared.com/(account/)?(download|get|file|document|photo|video|audio)/.*' __description__ = """2Shared.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<h1>(?P<N>.*)</h1>' FILE_SIZE_PATTERN = r'<span class="dtitle">File size:</span>\s*(?P<S>[0-9,.]+) (?P<U>[kKMG])i?B' diff --git a/pyload/plugins/hoster/UlozTo.py b/pyload/plugins/hoster/UlozTo.py index b33c5dd5f..3fecbd672 100644 --- a/pyload/plugins/hoster/UlozTo.py +++ b/pyload/plugins/hoster/UlozTo.py @@ -20,8 +20,8 @@ class UlozTo(SimpleHoster): __pattern__ = r'http://(?:www\.)?(uloz\.to|ulozto\.(cz|sk|net)|bagruj.cz|zachowajto.pl)/(?:live/)?(?P<id>\w+/[^/?]*)' __description__ = """Uloz.to hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<p>File <strong>(?P<N>[^<]+)</strong> is password protected</p>' FILE_NAME_PATTERN = r'<title>(?P<N>[^<]+) \| Uloz.to</title>' diff --git a/pyload/plugins/hoster/UloziskoSk.py b/pyload/plugins/hoster/UloziskoSk.py index 5bfb2fc77..e68e2686e 100644 --- a/pyload/plugins/hoster/UloziskoSk.py +++ b/pyload/plugins/hoster/UloziskoSk.py @@ -13,8 +13,8 @@ class UloziskoSk(SimpleHoster): __pattern__ = r'http://(?:www\.)?ulozisko.sk/.*' __description__ = """Ulozisko.sk hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<div class="down1">(?P<N>[^<]+)</div>' FILE_SIZE_PATTERN = ur'Veľkosť súboru: <strong>(?P<S>[0-9.]+) (?P<U>[kKMG])i?B</strong><br />' diff --git a/pyload/plugins/hoster/UnibytesCom.py b/pyload/plugins/hoster/UnibytesCom.py index 6adfdbae2..326310104 100644 --- a/pyload/plugins/hoster/UnibytesCom.py +++ b/pyload/plugins/hoster/UnibytesCom.py @@ -15,8 +15,8 @@ class UnibytesCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?unibytes\.com/[a-zA-Z0-9-._ ]{11}B' __description__ = """UniBytes.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_INFO_PATTERN = r'<span[^>]*?id="fileName"[^>]*>(?P<N>[^>]+)</span>\s*\((?P<S>\d.*?)\)' diff --git a/pyload/plugins/hoster/UnrestrictLi.py b/pyload/plugins/hoster/UnrestrictLi.py index c0d6ddaaa..18d363788 100644 --- a/pyload/plugins/hoster/UnrestrictLi.py +++ b/pyload/plugins/hoster/UnrestrictLi.py @@ -26,8 +26,7 @@ class UnrestrictLi(Hoster): __pattern__ = r'https?://(?:[^/]*\.)?(unrestrict|unr)\.li' __description__ = """Unrestrict.li hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] def setup(self): diff --git a/pyload/plugins/hoster/UploadStationCom.py b/pyload/plugins/hoster/UploadStationCom.py index 4671b2dc5..eaeba3937 100644 --- a/pyload/plugins/hoster/UploadStationCom.py +++ b/pyload/plugins/hoster/UploadStationCom.py @@ -11,8 +11,8 @@ class UploadStationCom(DeadHoster): __pattern__ = r'http://(?:www\.)?uploadstation\.com/file/(?P<id>[A-Za-z0-9]+)' __description__ = """UploadStation.com hoster plugin""" - __author_name__ = ("fragonib", "zoidberg") - __author_mail__ = ("fragonib[AT]yahoo[DOT]es", "zoidberg@mujmail.cz") + __authors__ = [("fragonib", "fragonib[AT]yahoo[DOT]es"), + ("zoidberg", "zoidberg@mujmail.cz")] getInfo = create_getInfo(UploadStationCom) diff --git a/pyload/plugins/hoster/UploadedTo.py b/pyload/plugins/hoster/UploadedTo.py index a72a0c1cb..f02b9951d 100644 --- a/pyload/plugins/hoster/UploadedTo.py +++ b/pyload/plugins/hoster/UploadedTo.py @@ -99,9 +99,12 @@ class UploadedTo(Hoster): __pattern__ = r'https?://(?:www\.)?(uploaded\.(to|net)|ul\.to)(/file/|/?\?id=|.*?&id=|/)(?P<ID>\w+)' __description__ = """Uploaded.net hoster plugin""" - __author_name__ = ("spoob", "mkaay", "zoidberg", "netpok", "stickell") - __author_mail__ = ("spoob@pyload.org", "mkaay@mkaay.de", "zoidberg@mujmail.cz", - "netpok@gmail.com", "l.stickell@yahoo.it") + __authors__ = [("spoob", "spoob@pyload.org"), + ("mkaay", "mkaay@mkaay.de"), + ("zoidberg", "zoidberg@mujmail.cz"), + ("netpok", "netpok@gmail.com"), + ("stickell", "l.stickell@yahoo.it")] + FILE_INFO_PATTERN = r'<a href="file/(?P<ID>\w+)" id="filename">(?P<N>[^<]+)</a> \s*<small[^>]*>(?P<S>[^<]+)</small>' OFFLINE_PATTERN = r'<small class="cL">Error: 404</small>' diff --git a/pyload/plugins/hoster/UploadheroCom.py b/pyload/plugins/hoster/UploadheroCom.py index 63155a23e..1220fd919 100644 --- a/pyload/plugins/hoster/UploadheroCom.py +++ b/pyload/plugins/hoster/UploadheroCom.py @@ -16,8 +16,9 @@ class UploadheroCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?uploadhero\.com?/dl/\w+' __description__ = """UploadHero.co plugin""" - __author_name__ = ("mcmyst", "zoidberg") - __author_mail__ = ("mcmyst@hotmail.fr", "zoidberg@mujmail.cz") + __authors__ = [("mcmyst", "mcmyst@hotmail.fr"), + ("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'<div class="nom_de_fichier">(?P<N>.*?)</div>' FILE_SIZE_PATTERN = r'Taille du fichier : </span><strong>(?P<S>.*?)</strong>' diff --git a/pyload/plugins/hoster/UploadingCom.py b/pyload/plugins/hoster/UploadingCom.py index 1df258c4f..9938d4829 100644 --- a/pyload/plugins/hoster/UploadingCom.py +++ b/pyload/plugins/hoster/UploadingCom.py @@ -16,8 +16,9 @@ class UploadingCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?uploading\.com/files/(?:get/)?(?P<ID>[\w\d]+)' __description__ = """Uploading.com hoster plugin""" - __author_name__ = ("jeix", "mkaay", "zoidberg") - __author_mail__ = ("jeix@hasnomail.de", "mkaay@mkaay.de", "zoidberg@mujmail.cz") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("mkaay", "mkaay@mkaay.de"), + ("zoidberg", "zoidberg@mujmail.cz")] FILE_NAME_PATTERN = r'id="file_title">(?P<N>.+)</' diff --git a/pyload/plugins/hoster/UpstoreNet.py b/pyload/plugins/hoster/UpstoreNet.py index e1ec93b99..2f05d6ffa 100644 --- a/pyload/plugins/hoster/UpstoreNet.py +++ b/pyload/plugins/hoster/UpstoreNet.py @@ -14,8 +14,8 @@ class UpstoreNet(SimpleHoster): __pattern__ = r'https?://(?:www\.)?upstore\.net/' __description__ = """Upstore.Net File Download Hoster""" - __author_name__ = "igel" - __author_mail__ = "igelkun@myopera.com" + __authors__ = [("igel", "igelkun@myopera.com")] + FILE_INFO_PATTERN = r'<div class="comment">.*?</div>\s*\n<h2 style="margin:0">(?P<N>.*?)</h2>\s*\n<div class="comment">\s*\n\s*(?P<S>[\d.]+) (?P<U>\w+)' OFFLINE_PATTERN = r'<span class="error">File not found</span>' diff --git a/pyload/plugins/hoster/UptoboxCom.py b/pyload/plugins/hoster/UptoboxCom.py index 437391145..2d6148905 100644 --- a/pyload/plugins/hoster/UptoboxCom.py +++ b/pyload/plugins/hoster/UptoboxCom.py @@ -13,8 +13,7 @@ class UptoboxCom(XFSPHoster): __pattern__ = r'https?://(?:www\.)?uptobox\.com/\w{12}' __description__ = """Uptobox.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] HOSTER_NAME = "uptobox.com" diff --git a/pyload/plugins/hoster/VeehdCom.py b/pyload/plugins/hoster/VeehdCom.py index 429ef8e1b..396588dfd 100644 --- a/pyload/plugins/hoster/VeehdCom.py +++ b/pyload/plugins/hoster/VeehdCom.py @@ -15,8 +15,7 @@ class VeehdCom(Hoster): ("replacement_char", "str", "Filename replacement character", "_")] __description__ = """Veehd.com hoster plugin""" - __author_name__ = "cat" - __author_mail__ = "cat@pyload" + __authors__ = [("cat", "cat@pyload")] def _debug(self, msg): diff --git a/pyload/plugins/hoster/VeohCom.py b/pyload/plugins/hoster/VeohCom.py index 057db56a3..90e3713f2 100644 --- a/pyload/plugins/hoster/VeohCom.py +++ b/pyload/plugins/hoster/VeohCom.py @@ -14,8 +14,8 @@ class VeohCom(SimpleHoster): __config__ = [("quality", "Low;High;Auto", "Quality", "Auto")] __description__ = """Veoh.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] + FILE_NAME_PATTERN = r'<meta name="title" content="(?P<N>.*?)"' OFFLINE_PATTERN = r'>Sorry, we couldn\'t find the video you were looking for' diff --git a/pyload/plugins/hoster/VidPlayNet.py b/pyload/plugins/hoster/VidPlayNet.py index 0de21931a..8c78b8bc1 100644 --- a/pyload/plugins/hoster/VidPlayNet.py +++ b/pyload/plugins/hoster/VidPlayNet.py @@ -14,8 +14,8 @@ class VidPlayNet(XFSPHoster): __pattern__ = r'https?://(?:www\.)?vidplay\.net/\w{12}' __description__ = """VidPlay.net hoster plugin""" - __author_name__ = "t4skforce" - __author_mail__ = "t4skforce1337[AT]gmail[DOT]com" + __authors__ = [("t4skforce", "t4skforce1337[AT]gmail[DOT]com")] + HOSTER_NAME = "vidplay.net" diff --git a/pyload/plugins/hoster/VimeoCom.py b/pyload/plugins/hoster/VimeoCom.py index d5dab556e..a8abf195a 100644 --- a/pyload/plugins/hoster/VimeoCom.py +++ b/pyload/plugins/hoster/VimeoCom.py @@ -15,8 +15,8 @@ class VimeoCom(SimpleHoster): ("original", "bool", "Try to download the original file first", True)] __description__ = """Vimeo.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] + FILE_NAME_PATTERN = r'<title>(?P<N>.+) on Vimeo<' OFFLINE_PATTERN = r'class="exception_header"' diff --git a/pyload/plugins/hoster/Vipleech4uCom.py b/pyload/plugins/hoster/Vipleech4uCom.py index 436b7d484..03215fffe 100644 --- a/pyload/plugins/hoster/Vipleech4uCom.py +++ b/pyload/plugins/hoster/Vipleech4uCom.py @@ -11,8 +11,7 @@ class Vipleech4uCom(DeadHoster): __pattern__ = r'http://(?:www\.)?vipleech4u\.com/manager\.php' __description__ = """Vipleech4u.com hoster plugin""" - __author_name__ = "Kagenoshin" - __author_mail__ = "kagenoshin@gmx.ch" + __authors__ = [("Kagenoshin", "kagenoshin@gmx.ch")] getInfo = create_getInfo(Vipleech4uCom) diff --git a/pyload/plugins/hoster/WarserverCz.py b/pyload/plugins/hoster/WarserverCz.py index 365f0f0fa..9b7f561b5 100644 --- a/pyload/plugins/hoster/WarserverCz.py +++ b/pyload/plugins/hoster/WarserverCz.py @@ -11,8 +11,7 @@ class WarserverCz(DeadHoster): __pattern__ = r'http://(?:www\.)?warserver\.cz/stahnout/\d+' __description__ = """Warserver.cz hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] getInfo = create_getInfo(WarserverCz) diff --git a/pyload/plugins/hoster/WebshareCz.py b/pyload/plugins/hoster/WebshareCz.py index 6ca8d8882..face27e0a 100644 --- a/pyload/plugins/hoster/WebshareCz.py +++ b/pyload/plugins/hoster/WebshareCz.py @@ -29,8 +29,7 @@ class WebshareCz(SimpleHoster): __pattern__ = r'https?://(?:www\.)?webshare.cz/(?:#/)?file/(?P<ID>\w+)' __description__ = """WebShare.cz hoster plugin""" - __author_name__ = "stickell" - __author_mail__ = "l.stickell@yahoo.it" + __authors__ = [("stickell", "l.stickell@yahoo.it")] def handleFree(self): diff --git a/pyload/plugins/hoster/WrzucTo.py b/pyload/plugins/hoster/WrzucTo.py index 17d568f54..34065284b 100644 --- a/pyload/plugins/hoster/WrzucTo.py +++ b/pyload/plugins/hoster/WrzucTo.py @@ -15,8 +15,8 @@ class WrzucTo(SimpleHoster): __pattern__ = r'http://(?:www\.)?wrzuc\.to/([a-zA-Z0-9]+(\.wt|\.html)|(\w+/?linki/[a-zA-Z0-9]+))' __description__ = """Wrzuc.to hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r'id="file_info">\s*<strong>(?P<N>.*?)</strong>' FILE_SIZE_PATTERN = r'class="info">\s*<tr>\s*<td>(?P<S>.*?)</td>' diff --git a/pyload/plugins/hoster/WuploadCom.py b/pyload/plugins/hoster/WuploadCom.py index 5bc933ae5..7260b5f1f 100644 --- a/pyload/plugins/hoster/WuploadCom.py +++ b/pyload/plugins/hoster/WuploadCom.py @@ -11,8 +11,8 @@ class WuploadCom(DeadHoster): __pattern__ = r'http://(?:www\.)?wupload\..*?/file/(([a-z][0-9]+/)?[0-9]+)(/.*)?' __description__ = """Wupload.com hoster plugin""" - __author_name__ = ("jeix", "Paul King") - __author_mail__ = ("jeix@hasnomail.de", "") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("Paul King", None)] getInfo = create_getInfo(WuploadCom) diff --git a/pyload/plugins/hoster/X7To.py b/pyload/plugins/hoster/X7To.py index 8df1d0ab3..e03502063 100644 --- a/pyload/plugins/hoster/X7To.py +++ b/pyload/plugins/hoster/X7To.py @@ -11,8 +11,7 @@ class X7To(DeadHoster): __pattern__ = r'http://(?:www\.)?x7.to/' __description__ = """X7.to hoster plugin""" - __author_name__ = "ernieb" - __author_mail__ = "ernieb" + __authors__ = [("ernieb", "ernieb")] getInfo = create_getInfo(X7To) diff --git a/pyload/plugins/hoster/XHamsterCom.py b/pyload/plugins/hoster/XHamsterCom.py index 77697281d..6d0dbd4d0 100644 --- a/pyload/plugins/hoster/XHamsterCom.py +++ b/pyload/plugins/hoster/XHamsterCom.py @@ -25,8 +25,7 @@ class XHamsterCom(Hoster): __config__ = [("type", ".mp4;.flv", "Preferred type", ".mp4")] __description__ = """XHamster.com hoster plugin""" - __author_name__ = None - __author_mail__ = None + __authors__ = [] def process(self, pyfile): @@ -67,6 +66,8 @@ class XHamsterCom(Hoster): if flashvars['url_mode']: url_mode = flashvars['url_mode'] + + else: self.fail("Parse error (url_mode)") diff --git a/pyload/plugins/hoster/XVideosCom.py b/pyload/plugins/hoster/XVideosCom.py index c3e555065..723b2acac 100644 --- a/pyload/plugins/hoster/XVideosCom.py +++ b/pyload/plugins/hoster/XVideosCom.py @@ -15,8 +15,7 @@ class XVideosCom(Hoster): __pattern__ = r'http://(?:www\.)?xvideos\.com/video([0-9]+)/.*' __description__ = """XVideos.com hoster plugin""" - __author_name__ = None - __author_mail__ = None + __authors__ = [] def process(self, pyfile): diff --git a/pyload/plugins/hoster/Xdcc.py b/pyload/plugins/hoster/Xdcc.py index ba798d2c2..c992ada2a 100644 --- a/pyload/plugins/hoster/Xdcc.py +++ b/pyload/plugins/hoster/Xdcc.py @@ -24,8 +24,7 @@ class Xdcc(Hoster): ("realname", "str", "Realname", "pyloadreal")] __description__ = """Download from IRC XDCC bot""" - __author_name__ = "jeix" - __author_mail__ = "jeix@hasnomail.com" + __authors__ = [("jeix", "jeix@hasnomail.com")] def setup(self): diff --git a/pyload/plugins/hoster/YibaishiwuCom.py b/pyload/plugins/hoster/YibaishiwuCom.py index 24cd0e9fc..9b0244aa2 100644 --- a/pyload/plugins/hoster/YibaishiwuCom.py +++ b/pyload/plugins/hoster/YibaishiwuCom.py @@ -14,8 +14,8 @@ class YibaishiwuCom(SimpleHoster): __pattern__ = r'http://(?:www\.)?(?:u\.)?115.com/file/(?P<ID>\w+)' __description__ = """115.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] + FILE_NAME_PATTERN = r"file_name: '(?P<N>[^']+)'" FILE_SIZE_PATTERN = r"file_size: '(?P<S>[^']+)'" diff --git a/pyload/plugins/hoster/YoupornCom.py b/pyload/plugins/hoster/YoupornCom.py index 26a9a76e7..a5b9f65ae 100644 --- a/pyload/plugins/hoster/YoupornCom.py +++ b/pyload/plugins/hoster/YoupornCom.py @@ -13,8 +13,7 @@ class YoupornCom(Hoster): __pattern__ = r'http://(?:www\.)?youporn\.com/watch/.+' __description__ = """Youporn.com hoster plugin""" - __author_name__ = "willnix" - __author_mail__ = "willnix@pyload.org" + __authors__ = [("willnix", "willnix@pyload.org")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/YourfilesTo.py b/pyload/plugins/hoster/YourfilesTo.py index 7c4157ad5..3bbdf0628 100644 --- a/pyload/plugins/hoster/YourfilesTo.py +++ b/pyload/plugins/hoster/YourfilesTo.py @@ -15,8 +15,8 @@ class YourfilesTo(Hoster): __pattern__ = r'(http://)?(?:www\.)?yourfiles\.(to|biz)/\?d=[a-zA-Z0-9]+' __description__ = """Youfiles.to hoster plugin""" - __author_name__ = ("jeix", "skydancer") - __author_mail__ = ("jeix@hasnomail.de", "skydancer@hasnomail.de") + __authors__ = [("jeix", "jeix@hasnomail.de"), + ("skydancer", "skydancer@hasnomail.de")] def process(self, pyfile): diff --git a/pyload/plugins/hoster/YoutubeCom.py b/pyload/plugins/hoster/YoutubeCom.py index 610983294..6679974cc 100644 --- a/pyload/plugins/hoster/YoutubeCom.py +++ b/pyload/plugins/hoster/YoutubeCom.py @@ -48,8 +48,9 @@ class YoutubeCom(Hoster): ("3d", "bool", "Prefer 3D", False)] __description__ = """Youtube.com hoster plugin""" - __author_name__ = ("spoob", "zoidberg") - __author_mail__ = ("spoob@pyload.org", "zoidberg@mujmail.cz") + __authors__ = [("spoob", "spoob@pyload.org"), + ("zoidberg", "zoidberg@mujmail.cz")] + FILE_URL_REPLACEMENTS = [(r'youtu\.be/', 'youtube.com/')] diff --git a/pyload/plugins/hoster/ZDF.py b/pyload/plugins/hoster/ZDF.py index cd1a83c7c..21ee94443 100644 --- a/pyload/plugins/hoster/ZDF.py +++ b/pyload/plugins/hoster/ZDF.py @@ -16,8 +16,7 @@ class ZDF(Hoster): __pattern__ = r'http://(?:www\.)?zdf\.de/ZDFmediathek/[^0-9]*([0-9]+)[^0-9]*' __description__ = """ZDF.de hoster plugin""" - __author_name__ = None - __author_mail__ = None + __authors__ = [] XML_API = "http://www.zdf.de/ZDFmediathek/xmlservice/web/beitragsDetails?id=%i" diff --git a/pyload/plugins/hoster/ZeveraCom.py b/pyload/plugins/hoster/ZeveraCom.py index 2f46199dc..6f390f0bb 100644 --- a/pyload/plugins/hoster/ZeveraCom.py +++ b/pyload/plugins/hoster/ZeveraCom.py @@ -11,8 +11,7 @@ class ZeveraCom(Hoster): __pattern__ = r'http://(?:www\.)?zevera\.com/.*' __description__ = """Zevera.com hoster plugin""" - __author_name__ = "zoidberg" - __author_mail__ = "zoidberg@mujmail.cz" + __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] def setup(self): diff --git a/pyload/plugins/hoster/ZippyshareCom.py b/pyload/plugins/hoster/ZippyshareCom.py index 60d152455..f8ef1ce43 100644 --- a/pyload/plugins/hoster/ZippyshareCom.py +++ b/pyload/plugins/hoster/ZippyshareCom.py @@ -16,8 +16,7 @@ class ZippyshareCom(SimpleHoster): __pattern__ = r'(?P<HOST>http://www\d{0,2}\.zippyshare\.com)/v(?:/|iew\.jsp.*key=)(?P<KEY>\d+)' __description__ = """Zippyshare.com hoster plugin""" - __author_name__ = "Walter Purcaro" - __author_mail__ = "vuolter@gmail.com" + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] FILE_NAME_PATTERN = r'>Name:.+?">(?P<N>.+?)<' |