diff options
| author | 2011-03-10 20:16:12 +0100 | |
|---|---|---|
| committer | 2011-03-10 20:16:12 +0100 | |
| commit | d6b14195bd33e7bc5e89e6e21b5b691c54c4629c (patch) | |
| tree | 054f9fe2f3aeac79142adce026373a2c167156e3 /module/plugins | |
| parent | closed #257, files.mail.ru premium (diff) | |
| download | pyload-d6b14195bd33e7bc5e89e6e21b5b691c54c4629c.tar.xz | |
fixed DepositFile free
Diffstat (limited to 'module/plugins')
| -rw-r--r-- | module/plugins/hoster/DepositfilesCom.py | 68 | 
1 files changed, 37 insertions, 31 deletions
| diff --git a/module/plugins/hoster/DepositfilesCom.py b/module/plugins/hoster/DepositfilesCom.py index 9ac8f5b9b..3c1124709 100644 --- a/module/plugins/hoster/DepositfilesCom.py +++ b/module/plugins/hoster/DepositfilesCom.py @@ -15,36 +15,27 @@ class DepositfilesCom(Hoster):      __author_mail__ = ("spoob@pyload.org")      def setup(self): -        self.req.canContinue = self.multiDL = True if self.account else False +        self.resumeDownload = self.multiDL = True if self.account else False + +        self.pyfile.url = re.sub(r"\.com(/.*?)?/files", ".com/de/files", self.pyfile.url)      def process(self, pyfile): +          self.html = self.load(self.pyfile.url, cookies=True if self.account else False) -        if re.search(r"Such file does not exist or it has been removed for infringement of copyrights", self.html): +        if '<span class="html_download_api-not_exists"></span>' in self.html:              self.offline() -         -        if not self.account: -            self.handleFree() -         -        try: -            pyfile.name = re.search('File name: <b title="(.*)">', self.html).group(1) -        except: -            pyfile.name = re.search('Dateiname: <b title="(.*)">', self.html).group(1) -         + +        pyfile.name = re.search('(?s)Dateiname: <b title=\"(.*?)\">.*?</b>', self.html).group(1) +          if self.account: -            link = urllib.unquote(re.search('<div id="download_url">\s*<a href="(http://.+?\.depositfiles.com/.+?)"', self.html).group(1)) +            self.handlePremium()          else: -            link = urllib.unquote(re.search('<form action="(http://.+?\.depositfiles.com/.+?)" method="get"', self.html).group(1)) -         -        self.download(link) +            self.handleFree()      def handleFree(self): -        tmp_url = self.pyfile.url -        match = re.search(r"depositfiles.com/(?:(?P<lang>[\w]{1,3})/)?files/(?P<id>[\w]+)", tmp_url) -        if match: -            if match.group("id"): -                tmp_url = "http://depositfiles.com/en/files/" + match.group("id") +        self.html = self.load(self.pyfile.url, post={"gateway_result":"1"})          if re.search(r'File is checked, please try again in a minute.', self.html) is not None:              self.log.info("DepositFiles.com: The file is being checked. Waiting 1 minute.") @@ -52,23 +43,38 @@ class DepositfilesCom(Hoster):              self.wait()              self.retry() -        if re.search(r'Such file does not exist or it has been removed for infringement of copyrights', self.html) is not None: -            self.offline() -             -        self.html = self.load(tmp_url, post={"gateway_result":"1"}) -         -        m = re.search(r'<span class="html_download_api-limit_interval">(\d+)</span>', self.html) -        if m is not None: -            wait_time = int( m.group(1) ) +        wait = re.search(r'html_download_api-limit_interval\">(\d+)</span>', self.html) +        if wait: +            wait_time = int(wait.group(1))              self.log.info( "%s: Traffic used up. Waiting %d seconds." % (self.__name__, wait_time) )              self.setWait(wait_time)              if wait_time > 300:                  self.wantReconnect = True -            self.wait() -             -            self.html = self.load(tmp_url, post={"gateway_result":"1"}) + +        wait = re.search(r'>Try in (\d+) minutes or use GOLD account', self.html) +        if wait: +            wait_time = int(wait.group(1)) +            self.log.info( "%s: All free slots occupied. Waiting %d minutes." % (self.__name__, wait_time) ) +            self.setWait(wait_time * 60, False) + +        wait = re.search(r'Please wait (\d+) sec', self.html) +        if wait: +            self.setWait(int(wait.group(1))) + +        self.wait() + +        form = re.search(r"\$\('#download_container'\)\.load\('([^']+)", self.html) + +        self.html = self.load("http://depositfiles.com/"+ form.group(1)) + +        link = urllib.unquote(re.search('<form action="(http://.+?\.depositfiles.com/.+?)" method="get"', self.html).group(1)) +        self.download(link)          #wait_time = int(re.search(r'<span id="download_waiter_remain">(.*?)</span>', self.html).group(1))          #self.setWait(wait_time)          #self.log.debug("DepositFiles.com: Waiting %d seconds." % wait_time) + +    def handlePremium(self): +        link = urllib.unquote(re.search('<div id="download_url">\s*<a href="(http://.+?\.depositfiles.com/.+?)"', self.html).group(1)) +        self.download(link) | 
