From 0e1ef9bc01579328e17e79416fa3c1c7b77adcc8 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Mon, 8 Jun 2015 06:08:01 +0200 Subject: Update everything --- module/plugins/hoster/GamefrontCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index c68866f87..b90fb2e85 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -3,14 +3,14 @@ import re from module.network.RequestFactory import getURL -from module.plugins.Hoster import Hoster +from module.plugins.internal.Hoster import Hoster from module.utils import parseFileSize class GamefrontCom(Hoster): __name__ = "GamefrontCom" __type__ = "hoster" - __version__ = "0.04" + __version__ = "0.05" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/\w+' -- cgit v1.2.3 From cdee58d0104822075041f2aa608a2776ef25bcc7 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Mon, 8 Jun 2015 21:52:54 +0200 Subject: [GamefrontCom] Fixup --- module/plugins/hoster/GamefrontCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index b90fb2e85..afa9cccff 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -10,7 +10,7 @@ from module.utils import parseFileSize class GamefrontCom(Hoster): __name__ = "GamefrontCom" __type__ = "hoster" - __version__ = "0.05" + __version__ = "0.06" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/\w+' @@ -57,7 +57,7 @@ class GamefrontCom(Hoster): def _getName(self): name = re.search(self.PATTERN_FILENAME, self.html) if name is None: - self.fail(_("Plugin broken") + self.fail(_("Plugin broken")) return name.group(1) -- cgit v1.2.3 From dee142a5f3be3fcbd245aab21686f0bc3aeab582 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Mon, 8 Jun 2015 22:20:53 +0200 Subject: [GamefrontCom] Update --- module/plugins/hoster/GamefrontCom.py | 84 +++++++---------------------------- 1 file changed, 15 insertions(+), 69 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index afa9cccff..590a85ee8 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -1,90 +1,36 @@ # -*- coding: utf-8 -*- -import re +from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo -from module.network.RequestFactory import getURL -from module.plugins.internal.Hoster import Hoster -from module.utils import parseFileSize - -class GamefrontCom(Hoster): +class GamefrontCom(SimpleHoster): __name__ = "GamefrontCom" __type__ = "hoster" - __version__ = "0.06" + __version__ = "0.07" - __pattern__ = r'http://(?:www\.)?gamefront\.com/files/\w+' + __pattern__ = r'http://(?:www\.)?gamefront\.com/files/(?P\d+)' __description__ = """Gamefront.com hoster plugin""" __license__ = "GPLv3" - __authors__ = [("fwannmacher", "felipe@warhammerproject.com")] + __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] + + NAME_PATTERN = r'>File Name:\s*
(?P.+?)<' + SIZE_PATTERN = r'>File Size:\s*
(?P[\d.,]+) (?P[\w^_]+)' + OFFLINE_PATTERN = r'

File not found' - PATTERN_FILENAME = r'(.*?) | Game Front' - PATTERN_FILESIZE = r'<dt>File Size:</dt>[\n\s]*<dd>(.*?)</dd>' - PATTERN_OFFLINE = r'This file doesn\'t exist, or has been removed.' + LINK_FREE_PATTERN = r"downloadUrl = '(.+?)'" def setup(self): self.resumeDownload = True self.multiDL = True - self.chunkLimit = -1 - - - def process(self, pyfile): - self.pyfile = pyfile - self.html = self.load(pyfile.url, decode=True) - - if not self._checkOnline(): - self.offline() - - pyfile.name = self._getName() - - link = self._getLink() - - if not link.startswith('http://'): - link = "http://www.gamefront.com/" + link - - self.download(link) - - - def _checkOnline(self): - if re.search(self.PATTERN_OFFLINE, self.html): - return False - else: - return True - - - def _getName(self): - name = re.search(self.PATTERN_FILENAME, self.html) - if name is None: - self.fail(_("Plugin broken")) - - return name.group(1) - - - def _getLink(self): - self.html2 = self.load("http://www.gamefront.com/" + re.search("(files/service/thankyou\\?id=\w+)", - self.html).group(1)) - return re.search("<a href=\"(http://media\d+\.gamefront.com/.*)\">click here</a>", self.html2).group(1).replace("&", "&") - - -def getInfo(urls): - result = [] - for url in urls: - html = getURL(url) - if re.search(GamefrontCom.PATTERN_OFFLINE, html): - result.append((url, 0, 1, url)) - else: - name = re.search(GamefrontCom.PATTERN_FILENAME, html) - if name is None: - result.append((url, 0, 1, url)) - else: - name = name.group(1) - size = re.search(GamefrontCom.PATTERN_FILESIZE, html) - size = parseFileSize(size.group(1)) + def handleFree(self, pyfile): + self.html = self.load("http://www.gamefront.com/files/service/thankyou", + get={'id': self.info['pattern']['ID']}) + return super(GamefrontCom, self).handleFree(pyfile) - result.append((name, size, 3, url)) - yield result +getInfo = create_getInfo(GamefrontCom) -- cgit v1.2.3 From b7acc14f4a1e6f2a5d635dcbffb9cd985eb1640f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Frederik=20M=C3=B6llers?= <frederikmoellers@posteo.de> Date: Tue, 23 Jun 2015 19:59:30 +0200 Subject: Update/Fix GamefrontCom hoster plugin GameFront uses a <span> tag around long filenames. This caused the plugin to include the tag in the filename. Instead of the (possibly abbreviated) filename in the page's content, the title (HTML <title> tag) is now used. --- module/plugins/hoster/GamefrontCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index 590a85ee8..f987a371a 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -6,7 +6,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class GamefrontCom(SimpleHoster): __name__ = "GamefrontCom" __type__ = "hoster" - __version__ = "0.07" + __version__ = "0.08" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/(?P<ID>\d+)' @@ -15,7 +15,7 @@ class GamefrontCom(SimpleHoster): __authors__ = [("Walter Purcaro", "vuolter@gmail.com")] - NAME_PATTERN = r'>File Name:</dt>\s*<dd>(?P<N>.+?)<' + NAME_PATTERN = r'<title>(?P<N>.+?) \| Game Front' SIZE_PATTERN = r'>File Size:\s*

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

File not found' -- cgit v1.2.3 From b1759bc440cd6013837697eb8de540914f693ffd Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Tue, 7 Jul 2015 01:23:55 +0200 Subject: No camelCase style anymore --- module/plugins/hoster/GamefrontCom.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index f987a371a..915ebca7c 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -6,7 +6,7 @@ from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo class GamefrontCom(SimpleHoster): __name__ = "GamefrontCom" __type__ = "hoster" - __version__ = "0.08" + __version__ = "0.09" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/(?P\d+)' @@ -23,14 +23,14 @@ class GamefrontCom(SimpleHoster): def setup(self): - self.resumeDownload = True - self.multiDL = True + self.resume_download = True + self.multi_dl = True - def handleFree(self, pyfile): + def handle_free(self, pyfile): self.html = self.load("http://www.gamefront.com/files/service/thankyou", get={'id': self.info['pattern']['ID']}) - return super(GamefrontCom, self).handleFree(pyfile) + return super(GamefrontCom, self).handle_free(pyfile) getInfo = create_getInfo(GamefrontCom) -- cgit v1.2.3 From d38e830b7c0b3c6561a0072c74bbccb5fcdf4a61 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Sun, 19 Jul 2015 14:43:42 +0200 Subject: New __status__ magic key --- module/plugins/hoster/GamefrontCom.py | 1 + 1 file changed, 1 insertion(+) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index 915ebca7c..ce5561239 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -7,6 +7,7 @@ class GamefrontCom(SimpleHoster): __name__ = "GamefrontCom" __type__ = "hoster" __version__ = "0.09" + __status__ = "stable" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/(?P\d+)' -- cgit v1.2.3 From 94d017cd2a5c1f194960827a8c7e46afc3682008 Mon Sep 17 00:00:00 2001 From: Walter Purcaro Date: Fri, 24 Jul 2015 06:55:49 +0200 Subject: Hotfixes (2) --- module/plugins/hoster/GamefrontCom.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'module/plugins/hoster/GamefrontCom.py') diff --git a/module/plugins/hoster/GamefrontCom.py b/module/plugins/hoster/GamefrontCom.py index ce5561239..fb3b98f5e 100644 --- a/module/plugins/hoster/GamefrontCom.py +++ b/module/plugins/hoster/GamefrontCom.py @@ -7,7 +7,7 @@ class GamefrontCom(SimpleHoster): __name__ = "GamefrontCom" __type__ = "hoster" __version__ = "0.09" - __status__ = "stable" + __status__ = "testing" __pattern__ = r'http://(?:www\.)?gamefront\.com/files/(?P\d+)' @@ -25,7 +25,7 @@ class GamefrontCom(SimpleHoster): def setup(self): self.resume_download = True - self.multi_dl = True + self.multiDL = True def handle_free(self, pyfile): -- cgit v1.2.3