diff options
| author | 2012-08-25 11:14:53 +0200 | |
|---|---|---|
| committer | 2012-08-25 11:14:53 +0200 | |
| commit | 693582ac3ae3df70d8f27d9aa45d2264200bb5dd (patch) | |
| tree | c3bfa5eaddfb513f3ae0b0ccbcf6faca0241c013 /module/plugins | |
| parent | update sharerapid.cz - possible workaround for #657 (diff) | |
| download | pyload-693582ac3ae3df70d8f27d9aa45d2264200bb5dd.tar.xz | |
update 1fichier
Diffstat (limited to 'module/plugins')
| -rw-r--r-- | module/plugins/hoster/OneFichierCom.py | 47 | 
1 files changed, 21 insertions, 26 deletions
| diff --git a/module/plugins/hoster/OneFichierCom.py b/module/plugins/hoster/OneFichierCom.py index 7bc777e08..128942b75 100644 --- a/module/plugins/hoster/OneFichierCom.py +++ b/module/plugins/hoster/OneFichierCom.py @@ -6,49 +6,44 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo  class OneFichierCom(SimpleHoster):      __name__ = "OneFichierCom"      __type__ = "hoster" -    __pattern__ = r"(http://\w+\.((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))" -    __version__ = "0.42" +    __pattern__ = r"(http://(\w+)\.((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))" +    __version__ = "0.43"      __description__ = """1fichier.com download hoster"""      __author_name__ = ("fragonib", "the-razer", "zoidberg")      __author_mail__ = ("fragonib[AT]yahoo[DOT]es", "daniel_ AT gmx DOT net", "zoidberg@mujmail.cz")      FILE_NAME_PATTERN = r'">File name :</th>\s*<td>(?P<N>[^<]+)</td>' -    FILE_SIZE_PATTERN = r'<th>File size :</th>\s*<td>(?P<S>[^<])+</td>' +    FILE_SIZE_PATTERN = r'<th>File size :</th>\s*<td>(?P<S>[^<]+)</td>'      FILE_OFFLINE_PATTERN = r'The (requested)? file (could not be found|has been deleted)'       FILE_URL_REPLACEMENTS = [(r'(http://[^/]*).*', r'\1/en/')]      DOWNLOAD_LINK_PATTERN = r'<br/> <br/> <br/> \s+<a href="(?P<url>http://.*?)"'             PASSWORD_PROTECTED_TOKEN = "protected by password" -    WAITING_TOKEN = "Please wait a few seconds" +    WAITING_TOKEN = "Please wait a few seconds"    -    def handleFree(self): +    def process(self, pyfile): +        found = re.search(self.__pattern__, pyfile.url) +        file_id = found.group(2)       +        url = "http://%s.%s/en/" % (found.group(2), found.group(3))          +        self.html = self.load(url, decode = True) +                  if self.WAITING_TOKEN in self.html: -            self.waitAndRetry(60) +            self.waitAndRetry(120) +         +        self.getFileInfo() +         +        url, inputs = self.parseHtmlForm('action="http://%s' % file_id) +        if not url or not inputs: +            self.parseError("Download link not found")          # Check for protection  -        if self.isProtected(): -            password = self.getPassword() -            self.logDebug("Submitting password [%s]" % password) -            self.download(url, post={"password" : password}) -        else: -            downloadLink = self.getDownloadLink() -            self.download(downloadLink) +        if "pass" in inputs: +            inputs['pass'] = self.getPassword() +             +        self.download(url, post = inputs)          # Check download           self.checkDownloadedFile() -     -    def isProtected(self): -        if self.PASSWORD_PROTECTED_TOKEN in self.html: -            self.logDebug("Links are password protected") -            return True -        return False -         -    def getDownloadLink(self): -        m = re.search(self.DOWNLOAD_LINK_PATTERN, self.html) -        if m is not None: -            url = m.group('url') -            self.logDebug("Got file URL [%s]" % url) -            return url      def checkDownloadedFile(self):          check = self.checkDownload({"wait": self.WAITING_TOKEN}) | 
