diff options
Diffstat (limited to 'pyload/plugin/account/FastshareCz.py')
| -rw-r--r-- | pyload/plugin/account/FastshareCz.py | 51 | 
1 files changed, 51 insertions, 0 deletions
| diff --git a/pyload/plugin/account/FastshareCz.py b/pyload/plugin/account/FastshareCz.py new file mode 100644 index 000000000..ce79e26ad --- /dev/null +++ b/pyload/plugin/account/FastshareCz.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- + +import re + +from pyload.plugin.Account import Account +from pyload.utils import parseFileSize + + +class FastshareCz(Account): +    __name__    = "FastshareCz" +    __type__    = "account" +    __version__ = "0.06" + +    __description__ = """Fastshare.cz account plugin""" +    __license__     = "GPLv3" +    __authors__     = [("zoidberg", "zoidberg@mujmail.cz"), +                       ("stickell", "l.stickell@yahoo.it")] + + +    CREDIT_PATTERN = r'Credit\s*:\s*</td>\s*<td>(.+?)\s*<' + + +    def loadAccountInfo(self, user, req): +        validuntil  = -1 +        trafficleft = None +        premium     = False + +        html = req.load("http://www.fastshare.cz/user", decode=True) + +        m = re.search(self.CREDIT_PATTERN, html) +        if m: +            trafficleft = self.parseTraffic(m.group(1)) + +        premium = bool(trafficleft) + +        return {'validuntil' : validuntil, +                'trafficleft': trafficleft, +                'premium'    : premium} + + +    def login(self, user, data, req): +        req.cj.setCookie("fastshare.cz", "lang", "en") + +        req.load('http://www.fastshare.cz/login')  # Do not remove or it will not login + +        html = req.load("http://www.fastshare.cz/sql.php", +                        post={'login': user, 'heslo': data['password']}, +                        decode=True) + +        if ">Wrong username or password" in html: +            self.wrongPassword() | 
