From 59f743bbfde24d94a16c9fc60095014d66a2cb70 Mon Sep 17 00:00:00 2001
From: Walter Purcaro <vuolter@gmail.com>
Date: Sun, 28 Sep 2014 19:14:58 +0200
Subject: [SpeedyshareCom] Code cleanup

---
 module/plugins/hoster/DevhostSt.py      |  5 ++--
 module/plugins/hoster/KingfilesNet.py   |  5 ++--
 module/plugins/hoster/SpeedyshareCom.py | 46 +++++++++++++++++++--------------
 3 files changed, 33 insertions(+), 23 deletions(-)

(limited to 'module')

diff --git a/module/plugins/hoster/DevhostSt.py b/module/plugins/hoster/DevhostSt.py
index fbeb883e1..088ace93a 100644
--- a/module/plugins/hoster/DevhostSt.py
+++ b/module/plugins/hoster/DevhostSt.py
@@ -41,8 +41,9 @@ class DevhostSt(SimpleHoster):
         self.logDebug("Download URL = " + dl_url)
         self.download(dl_url, disposition=True)
 
-        if self.checkDownload({'is_html': re.compile("html")}) == "is_html":
-            self.parseError("The downloaded file is html, something went wrong")
+        check = self.checkDownload({'is_html': re.compile("html")})
+        if check == "is_html":
+            self.parseError("Downloaded file is an html file")
 
 
 getInfo = create_getInfo(DevhostSt)
diff --git a/module/plugins/hoster/KingfilesNet.py b/module/plugins/hoster/KingfilesNet.py
index f0e51645a..4d87a5933 100644
--- a/module/plugins/hoster/KingfilesNet.py
+++ b/module/plugins/hoster/KingfilesNet.py
@@ -86,8 +86,9 @@ class KingfilesNet(SimpleHoster):
         dl_url = m.group(1)
         self.download(dl_url, cookies=True, disposition=True)
 
-        if self.checkDownload({'is_html': re.compile("<html>")}) == "is_html":
-            self.fail("The downloaded file is html, something went wrong.")
+        check = self.checkDownload({'is_html': re.compile("<html>")})
+        if check == "is_html":
+            self.parseError("Downloaded file is an html file")
 
 
 getInfo = create_getInfo(KingfilesNet)
diff --git a/module/plugins/hoster/SpeedyshareCom.py b/module/plugins/hoster/SpeedyshareCom.py
index 22f4ee511..49d3a4dab 100644
--- a/module/plugins/hoster/SpeedyshareCom.py
+++ b/module/plugins/hoster/SpeedyshareCom.py
@@ -1,43 +1,51 @@
 # -*- coding: utf-8 -*-
-
-# Testlink:
+#
+# Test links:
 # http://speedy.sh/ep2qY/Zapp-Brannigan.jpg
 
 import re
 
+from urlparse import urljoin
+
 from module.plugins.internal.SimpleHoster import SimpleHoster, create_getInfo
 
 
 class SpeedyshareCom(SimpleHoster):
     __name__ = "SpeedyshareCom"
     __type__ = "hoster"
-    __pattern__ = r"https?://(www\.)?(speedyshare.com|speedy.sh)/.*"
-    __version__ = "0.01"
-    __description__ = """speedyshare.com hoster plugin"""
-    __author_name__ = ("zapp-brannigan")
-    __author_mail__ = ("fuerst.reinje@web.de")
+    __version__ = "0.02"
+
+    __pattern__ = r"https?://(www\.)?(speedyshare\.com|speedy\.sh)/\w+"
+
+    __description__ = """Speedyshare.com hoster plugin"""
+    __author_name__ = "zapp-brannigan"
+    __author_mail__ = "fuerst.reinje@web.de"
+
 
     FILE_NAME_PATTERN = r'class=downloadfilename>(?P<N>.*)</span></td>'
     FILE_SIZE_PATTERN = r'class=sizetagtext>(?P<S>.*) (?P<U>[kKmM]?[iI]?[bB]?)</div>'
-    LINK_PATTERN = r'<a href=\'(.*)\'><img src=/gf/slowdownload.png alt=\'Slow Download\' border=0'
+
     FILE_OFFLINE_PATTERN = r'class=downloadfilenamenotfound>.*</span>'
-    BASE_URL = 'www.speedyshare.com'
+
+    LINK_PATTERN = r'<a href=\'(.*)\'><img src=/gf/slowdownload.png alt=\'Slow Download\' border=0'
+
 
     def setup(self):
         self.multiDL = False
         self.chunkLimit = 1
 
-    def process(self, pyfile):
-        self.html = self.load(pyfile.url, decode=True)
-        try:
-            dl_link = re.search(self.LINK_PATTERN, self.html).group(1)
-            self.logDebug("Link: " + dl_link)
-        except:
-            self.parseError("Unable to find download link")
-        self.download(self.BASE_URL + dl_link, disposition=True)
-        check = self.checkDownload({"is_html": re.compile("html")})
+
+    def handleFree(self):
+        m = re.search(self.LINK_PATTERN, self.html)
+        if m is None:
+            self.parseError("Download link not found")
+
+        dl_link = urljoin("http://www.speedyshare.com", m.group(1))
+        self.download(dl_link, disposition=True)
+
+        check = self.checkDownload({'is_html': re.compile("html")})
         if check == "is_html":
-            self.fail("The downloaded file is html, maybe the plugin is out of date")
+            self.parseError("Downloaded file is an html file")
 
 
 getInfo = create_getInfo(SpeedyshareCom)
-- 
cgit v1.2.3