From adc9ab75ce58712afecf92c87f985fa00e783337 Mon Sep 17 00:00:00 2001 From: saintego Date: Thu, 26 Mar 2015 21:50:54 +0100 Subject: rghost issue #1289 add rghost.ru and fix link_free_patern --- module/plugins/hoster/RgHostNet.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/RgHostNet.py b/module/plugins/hoster/RgHostNet.py index 9a8a340ec..9f08cf740 100644 --- a/module/plugins/hoster/RgHostNet.py +++ b/module/plugins/hoster/RgHostNet.py @@ -10,7 +10,7 @@ class RgHostNet(SimpleHoster): __type__ = "hoster" __version__ = "0.03" - __pattern__ = r'http://(?:www\.)?rghost\.net/\d+(?:r=\d+)?' + __pattern__ = r'http://(?:www\.)?rghost\.(?:net|ru)/\d+(?:r=\d+)?' __config__ = [("use_premium", "bool", "Use premium account if available", True)] __description__ = """RgHost.net hoster plugin""" @@ -21,7 +21,7 @@ class RgHostNet(SimpleHoster): INFO_PATTERN = r'

\s+(]+>)?(?P[^<]+)()?\s+]+>\s+\((?P[^)]+)\)\s+\s+

' OFFLINE_PATTERN = r'File is deleted|this page is not found' - LINK_FREE_PATTERN = r']+>Download' + LINK_FREE_PATTERN = r']+>Download' getInfo = create_getInfo(RgHostNet) -- cgit v1.2.3 From 075311e5dd1ba263d3860752a339d88eb596bc4e Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Thu, 26 Mar 2015 22:17:51 +0100 Subject: [RgHostNet] Update --- module/plugins/hoster/RgHostNet.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/RgHostNet.py b/module/plugins/hoster/RgHostNet.py index 9f08cf740..1a45def44 100644 --- a/module/plugins/hoster/RgHostNet.py +++ b/module/plugins/hoster/RgHostNet.py @@ -8,9 +8,9 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class RgHostNet(SimpleHoster): __name__ = "RgHostNet" __type__ = "hoster" - __version__ = "0.03" + __version__ = "0.04" - __pattern__ = r'http://(?:www\.)?rghost\.(?:net|ru)/\d+(?:r=\d+)?' + __pattern__ = r'http://(?:www\.)?rghost\.(net|ru)/[\d-]+' __config__ = [("use_premium", "bool", "Use premium account if available", True)] __description__ = """RgHost.net hoster plugin""" @@ -18,10 +18,11 @@ class RgHostNet(SimpleHoster): __authors__ = [("z00nx", "z00nx0@gmail.com")] - INFO_PATTERN = r'

\s+(]+>)?(?P[^<]+)()?\s+]+>\s+\((?P[^)]+)\)\s+\s+

' - OFFLINE_PATTERN = r'File is deleted|this page is not found' + INFO_PATTERN = r'data-share42-text="(?P.+?) \((?P[\d.,]+) (?P[\w^_]+)' + HASHSUM_PATTERN = r'
(?P\w+)
\s*
(?P\w+)' + OFFLINE_PATTERN = r'>(File is deleted|page not found)' - LINK_FREE_PATTERN = r']+>Download' + LINK_FREE_PATTERN = r'\d+)' + __pattern__ = r'http://(?:www|files\.)?(?:ifolder\.ru|metalarea\.org|rusfolder\.(?:com|net|ru))/(?:files/)?(?P\d+)' __config__ = [("use_premium", "bool", "Use premium account if available", True)] __description__ = """Ifolder.ru hoster plugin""" @@ -24,11 +24,11 @@ class IfolderRu(SimpleHoster): SIZE_PATTERN = ur'(?:
)?Размер:(?:)? (?P[^<]+)<(?:/div|br)>' OFFLINE_PATTERN = ur'

Файл номер [^<]* (не найден|удален) !!!

' - SESSION_ID_PATTERN = r'
]+)>' + SESSION_ID_PATTERN = r'неверный код,
введите еще раз
' @@ -39,26 +39,15 @@ class IfolderRu(SimpleHoster): def handleFree(self, pyfile): + url = "http://rusfolder.com/%s" % self.info['pattern']['ID'] self.html = self.load("http://rusfolder.com/%s" % self.info['pattern']['ID'], decode=True) self.getFileInfo() - url = re.search(r"location\.href = '(http://ints\..*?=)'", self.html).group(1) - self.html = self.load(url, decode=True) - - url, session_id = re.search(self.SESSION_ID_PATTERN, self.html).groups() - self.html = self.load(url, decode=True) - - url = "http://ints.rusfolder.com/ints/frame/?session=%s" % session_id - self.html = self.load(url) - - self.wait(31, False) + session_id = re.search(self.SESSION_ID_PATTERN, self.html).groups() captcha_url = "http://ints.rusfolder.com/random/images/?session=%s" % session_id for _i in xrange(5): - self.html = self.load(url) - action, inputs = self.parseHtmlForm('ID="Form1"') - inputs['ints_session'] = re.search(self.INTS_SESSION_PATTERN, self.html).group(1) - inputs[re.search(self.HIDDEN_INPUT_PATTERN, self.html).group(1)] = '1' + action, inputs = self.parseHtmlForm('id="download-step-one-form"') inputs['confirmed_number'] = self.decryptCaptcha(captcha_url, cookies=True) inputs['action'] = '1' self.logDebug(inputs) @@ -71,7 +60,8 @@ class IfolderRu(SimpleHoster): else: self.fail(_("Invalid captcha")) - self.link = re.search(self.LINK_PATTERN, self.html).group(1) + self.link = re.search(self.LINK_FREE_PATTERN, self.html).group(1) getInfo = create_getInfo(IfolderRu) + -- cgit v1.2.3 From 43c335536e8703103850b367ac3dcfbe7da650a9 Mon Sep 17 00:00:00 2001 From: ludoviclehmann Date: Fri, 27 Mar 2015 16:14:30 +0100 Subject: Fix issue #1042 https://github.com/pyload/pyload/issues/1042 --- module/plugins/hoster/OneFichierCom.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/OneFichierCom.py b/module/plugins/hoster/OneFichierCom.py index 2586fb622..0a49084cf 100644 --- a/module/plugins/hoster/OneFichierCom.py +++ b/module/plugins/hoster/OneFichierCom.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import re +import urllib2 from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo @@ -8,7 +9,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class OneFichierCom(SimpleHoster): __name__ = "OneFichierCom" __type__ = "hoster" - __version__ = "0.79" + __version__ = "0.80" __pattern__ = r'https?://(?:www\.)?(?:(?P\w+)\.)?(?P1fichier\.com|alterupload\.com|cjoint\.net|d(es)?fichiers\.com|dl4free\.com|megadl\.fr|mesfichiers\.org|piecejointe\.net|pjointe\.com|tenvoi\.com)(?:/\?(?P\w+))?' __config__ = [("use_premium", "bool", "Use premium account if available", True)] @@ -54,6 +55,21 @@ class OneFichierCom(SimpleHoster): self.download(url, post=inputs) + def handleDirect(self, pyfile): + link = self.directLink(pyfile.url, self.resumeDownload) + + if link: + self.logInfo(_("Direct download link detected")) + remote = urllib2.urlopen(link) + name = remote.info()['Content-Disposition'].split(';') + filename = name[1].split('filename=')[1] + filename = filename[1:-1] + self.logDebug("filename=" + filename) + pyfile.name = filename + self.link = link + else: + self.logDebug("Direct download link not found") + def handlePremium(self, pyfile): self.download(pyfile.url, post={'dl': "Download", 'did': 0}) -- cgit v1.2.3 From ba93d07b55a937553d9913813eff6af398bb2f45 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Sat, 28 Mar 2015 01:55:37 +0100 Subject: [UlozTo] Update hoster --- module/plugins/hoster/UlozTo.py | 96 +++++++++++++++++++++-------------------- 1 file changed, 49 insertions(+), 47 deletions(-) (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/UlozTo.py b/module/plugins/hoster/UlozTo.py index 89596512e..3a6e69c45 100644 --- a/module/plugins/hoster/UlozTo.py +++ b/module/plugins/hoster/UlozTo.py @@ -15,7 +15,7 @@ def convertDecimalPrefix(m): class UlozTo(SimpleHoster): __name__ = "UlozTo" __type__ = "hoster" - __version__ = "1.04" + __version__ = "1.05" __pattern__ = r'http://(?:www\.)?(uloz\.to|ulozto\.(cz|sk|net)|bagruj\.cz|zachowajto\.pl)/(?:live/)?(?P\w+/[^/?]*)' __config__ = [("use_premium", "bool", "Use premium account if available", True)] @@ -33,9 +33,12 @@ class UlozTo(SimpleHoster): URL_REPLACEMENTS = [(r"(?<=http://)([^/]+)", "www.ulozto.net")] SIZE_REPLACEMENTS = [('([\d.]+)\s([kMG])B', convertDecimalPrefix)] - ADULT_PATTERN = r'
' + CHECK_TRAFFIC = True + DISPOSITION = False #: Remove in 0.4.10 + + ADULT_PATTERN = r'' PASSWD_PATTERN = r'
' - VIPLINK_PATTERN = r'' + VIPLINK_PATTERN = r'' TOKEN_PATTERN = r' Date: Sat, 28 Mar 2015 01:59:01 +0100 Subject: Spare code cosmetics --- module/plugins/hoster/CrockoCom.py | 12 ++++++------ module/plugins/hoster/CzshareCom.py | 6 +++--- module/plugins/hoster/DataHu.py | 2 +- module/plugins/hoster/DepositfilesCom.py | 2 +- module/plugins/hoster/DlFreeFr.py | 4 ++-- module/plugins/hoster/EdiskCz.py | 2 +- module/plugins/hoster/ExtabitCom.py | 2 +- module/plugins/hoster/FilejungleCom.py | 2 +- module/plugins/hoster/FilepostCom.py | 2 +- module/plugins/hoster/FileserveCom.py | 2 +- module/plugins/hoster/HugefilesNet.py | 2 +- module/plugins/hoster/IfolderRu.py | 10 +++++----- module/plugins/hoster/Keep2ShareCc.py | 4 ++-- module/plugins/hoster/MegaRapidCz.py | 4 ++-- module/plugins/hoster/MegaRapidoNet.py | 8 ++++---- module/plugins/hoster/MegasharesCom.py | 8 ++++---- module/plugins/hoster/MovReelCom.py | 2 +- module/plugins/hoster/NovafileCom.py | 4 ++-- module/plugins/hoster/NowDownloadSx.py | 2 +- module/plugins/hoster/OneFichierCom.py | 25 ++++++++++--------------- module/plugins/hoster/PornhubCom.py | 2 +- module/plugins/hoster/PromptfileCom.py | 6 +++--- module/plugins/hoster/QuickshareCz.py | 2 +- module/plugins/hoster/RapidgatorNet.py | 2 +- module/plugins/hoster/SendspaceCom.py | 6 +++--- module/plugins/hoster/StreamCz.py | 4 ++-- module/plugins/hoster/UloziskoSk.py | 8 ++++---- module/plugins/hoster/UnibytesCom.py | 4 ++-- module/plugins/hoster/UploadedTo.py | 2 +- module/plugins/hoster/UpstoreNet.py | 2 +- module/plugins/hoster/VeehdCom.py | 4 ++-- 31 files changed, 71 insertions(+), 76 deletions(-) (limited to 'module/plugins/hoster') diff --git a/module/plugins/hoster/CrockoCom.py b/module/plugins/hoster/CrockoCom.py index 6a9715465..1d7468520 100644 --- a/module/plugins/hoster/CrockoCom.py +++ b/module/plugins/hoster/CrockoCom.py @@ -19,16 +19,16 @@ class CrockoCom(SimpleHoster): __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] - NAME_PATTERN = r'Download:\s*(?P.*)' - SIZE_PATTERN = r'(?P[^<]+)' + NAME_PATTERN = r'Download:\s*(?P.*)' + SIZE_PATTERN = r'(?P[^<]+)' OFFLINE_PATTERN = r'

Sorry,
the page you\'re looking for
isn\'t here.

|File not found' - CAPTCHA_PATTERN = re.compile(r"u='(/file_contents/captcha/\w+)';\s*w='(\d+)';") + CAPTCHA_PATTERN = r"u='(/file_contents/captcha/\w+)';\s*w='(\d+)';" - FORM_PATTERN = r'(.*?)' - FORM_INPUT_PATTERN = r']* name="?([^" ]+)"? value="?([^" ]+)"?[^>]*>' + FORM_PATTERN = r'
(.*?)
' + FORM_INPUT_PATTERN = r']* name="?([^" ]+)"? value="?([^" ]+)"?.*?>' - NAME_REPLACEMENTS = [(r'<[^>]*>', '')] + NAME_REPLACEMENTS = [(r'<.*?>', '')] def handleFree(self, pyfile): diff --git a/module/plugins/hoster/CzshareCom.py b/module/plugins/hoster/CzshareCom.py index 6494ce0bd..8f72f2148 100644 --- a/module/plugins/hoster/CzshareCom.py +++ b/module/plugins/hoster/CzshareCom.py @@ -22,7 +22,7 @@ class CzshareCom(SimpleHoster): __authors__ = [("zoidberg", "zoidberg@mujmail.cz")] - NAME_PATTERN = r'
\s*

\s*Cel. n.zev: ]*>(?P[^<]+)' + NAME_PATTERN = r'

\s*

\s*Cel. n.zev: (?P[^<]+)' SIZE_PATTERN = r'

(?:\s*

[^\n]*

)*\s*Velikost:\s*(?P[\d .,]+)(?P[\w^_]+)\s*
' OFFLINE_PATTERN = r'
\s*

' @@ -31,10 +31,10 @@ class CzshareCom(SimpleHoster): CHECK_TRAFFIC = True - FREE_URL_PATTERN = r'[^>]*alt="([^"]+)" />' + FREE_URL_PATTERN = r'[^>]*alt="(.+?)" />' FREE_FORM_PATTERN = r'
\s*(.*?)
' PREMIUM_FORM_PATTERN = r'
(.*?)
' - FORM_INPUT_PATTERN = r']* name="([^"]+)" value="([^"]+)"[^>]*/>' + FORM_INPUT_PATTERN = r']* name="(.+?)" value="(.+?)"[^>]*/>' MULTIDL_PATTERN = r'

Z[^<]*PROFI.

' USER_CREDIT_PATTERN = r'
\s*kredit: ([\d .,]+)(\w+)\s*
' diff --git a/module/plugins/hoster/DataHu.py b/module/plugins/hoster/DataHu.py index 58e5b7e3e..955c94437 100644 --- a/module/plugins/hoster/DataHu.py +++ b/module/plugins/hoster/DataHu.py @@ -24,7 +24,7 @@ class DataHu(SimpleHoster): INFO_PATTERN = ur'(?P<N>.*) \((?P<S>[^)]+)\) let\xf6lt\xe9se' OFFLINE_PATTERN = ur'Az adott f\xe1jl nem l\xe9tezik' - LINK_FREE_PATTERN = r'

' + INFO_PATTERN = r'\s*.*?\((?P[\d.,]+) (?P[\w^_]+)\)' OFFLINE_PATTERN = r'

This file does not exist due to one of the following: