diff options
| author | 2011-10-09 10:38:12 +0200 | |
|---|---|---|
| committer | 2011-10-09 10:38:12 +0200 | |
| commit | 23f43663d0ec81a99c3507db148c22e5d67babe7 (patch) | |
| tree | c3d3b971a28e4504af0799334d24e9fd1f1d56fe /module/plugins/hoster/ShareRapidCom.py | |
| parent | add filepost.com plugin (diff) | |
| download | pyload-23f43663d0ec81a99c3507db148c22e5d67babe7.tar.xz | |
add filejungle.com, fix sharerapid.com
Diffstat (limited to 'module/plugins/hoster/ShareRapidCom.py')
| -rw-r--r-- | module/plugins/hoster/ShareRapidCom.py | 55 | 
1 files changed, 32 insertions, 23 deletions
| diff --git a/module/plugins/hoster/ShareRapidCom.py b/module/plugins/hoster/ShareRapidCom.py index 96962cffe..ce1912d38 100644 --- a/module/plugins/hoster/ShareRapidCom.py +++ b/module/plugins/hoster/ShareRapidCom.py @@ -2,44 +2,53 @@  # -*- coding: utf-8 -*-  import re +from pycurl import HTTPHEADER +from module.network.RequestFactory import getRequest  from module.plugins.Hoster import Hoster -from module.network.RequestFactory import getURL  def getInfo(urls):      result = [] -    for url in urls:  -        html = getURL(url, decode=True) -        if re.search(ShareRapidCom.FILE_OFFLINE_PATTERN, html): -            # File offline -            result.append((url, 0, 1, url)) -        else: -            # Get file info -            name, size = url, 0 - -            found = re.search(ShareRapidCom.FILE_SIZE_PATTERN, html) -            if found is not None: -                size, units = found.groups() -                size = float(size) * 1024 ** {'kB': 1, 'MB': 2, 'GB': 3}[units] +    for url in urls: +        h = getRequest() +        try: +            h.c.setopt(HTTPHEADER, ["Accept: text/html"]) +            html = h.load(url, cookies = True, decode = True) -            found = re.search(ShareRapidCom.FILE_NAME_PATTERN, html) -            if found is not None: -                name = found.group(1) - -            if found or size > 0: -                result.append((name, size, 2, url)) +            if re.search(ShareRapidCom.FILE_OFFLINE_PATTERN, html): +                # File offline +                result.append((url, 0, 1, url)) +            else: +                # Get file info +                name, size = url, 0 +     +                found = re.search(ShareRapidCom.FILE_SIZE_PATTERN, html) +                if found is not None: +                    size, units = found.groups() +                    size = float(size) * 1024 ** {'kB': 1, 'MB': 2, 'GB': 3}[units] +     +                found = re.search(ShareRapidCom.FILE_NAME_INFO_PATTERN, html) +                if found is not None: +                    name = found.group(1) +     +                if found or size > 0: +                    result.append((name, size, 2, url)) +        finally: +            h.close() +              yield result  class ShareRapidCom(Hoster):      __name__ = "ShareRapidCom"      __type__ = "hoster" -    __pattern__ = r"http://(?:www\.)?share-rapid\.(com|cz)/" -    __version__ = "0.3" -    __description__ = """share-rapid Plugin""" +    __pattern__ = r"http://(?:www\.)?((share(-?rapid\.(biz|com|cz|info|eu|net|org|pl|sk)|-(central|credit|free|net)\.cz|-ms\.net)|(s-?rapid|rapids)\.(cz|sk))|(e-stahuj|mediatack|premium-rapidshare|rapidshare-premium|qiuck)\.cz|kadzet\.com|stahuj-zdarma\.eu|strelci\.net|universal-share\.com)/.*" +    __version__ = "0.4" +    __description__ = """Share-rapid.com plugin - premium only"""      __author_name__ = ("MikyWoW", "zoidberg")      __author_mail__ = ("MikyWoW@seznam.cz", "zoidberg@mujmail.cz")      FILE_NAME_PATTERN = r'<h3>([^<]+)</h3>' +    FILE_NAME_INFO_PATTERN = r'<h1[^>]*><span[^>]*>([^<]+)</ br> </h1>'      FILE_SIZE_PATTERN = r'<td class="i">Velikost:</td>\s*<td class="h"><strong>\s*([0-9.]+) (kB|MB|GB)</strong></td>'      DOWNLOAD_URL_PATTERN = r'<a href="([^"]+)" title="Stahnout">([^<]+)</a>'      ERR_LOGIN_PATTERN = ur'<div class="error_div"><strong>Stahování je přístupné pouze přihlášeným uživatelům' | 
