summaryrefslogtreecommitdiffstats
path: root/module/plugins/hoster
diff options
context:
space:
mode:
authorGravatar Gregy <gregy@gregy.cz> 2010-08-08 23:05:47 +0200
committerGravatar Gregy <gregy@gregy.cz> 2010-08-08 23:05:47 +0200
commita574e7e732af4efa66f5ad69354065f28a218392 (patch)
treed44b577dec85415305a7853161ab533d51211f6d /module/plugins/hoster
parentNetloadIn partial rewrite (issues fix, implemented info prefetch) (diff)
parentMU link checker (diff)
downloadpyload-a574e7e732af4efa66f5ad69354065f28a218392.tar.xz
merge
Diffstat (limited to 'module/plugins/hoster')
-rw-r--r--module/plugins/hoster/MegauploadCom.py44
-rw-r--r--module/plugins/hoster/MyvideoDe.py18
2 files changed, 51 insertions, 11 deletions
diff --git a/module/plugins/hoster/MegauploadCom.py b/module/plugins/hoster/MegauploadCom.py
index 06a25f44b..a1eaf6cc5 100644
--- a/module/plugins/hoster/MegauploadCom.py
+++ b/module/plugins/hoster/MegauploadCom.py
@@ -8,6 +8,44 @@ from time import time
from module.plugins.Hoster import Hoster
+from module.network.Request import getURL
+
+def getInfo(urls):
+ url = "http://megaupload.com/mgr_linkcheck.php"
+
+ ids = [x.split("=")[-1] for x in urls]
+
+ i = 0
+ post = {}
+ for id in ids:
+ post["id%i"%i] = id
+ i += 1
+
+ api = getURL(url, {}, post)
+ api = [x.split("&") for x in re.split(r"&?(?=id[\d]+=)", api)]
+
+ result = []
+ i=0
+ for data in api:
+ if data[0].startswith("id"):
+ tmp = [x.split("=") for x in data]
+ if tmp[2][1] == "3":
+ status = 3
+ elif tmp[0][1] == "0":
+ status = 2
+ elif tmp[0][1] == "1":
+ status = 1
+ else:
+ status = 3
+
+ name = tmp[3][1]
+ size = tmp[1][1]
+
+ result.append( (name, size, status, urls[i] ) )
+ i += 1
+
+ yield result
+
class MegauploadCom(Hoster):
__name__ = "MegauploadCom"
__type__ = "hoster"
@@ -33,16 +71,14 @@ class MegauploadCom(Hoster):
pyfile.name = self.get_file_name()
self.download(self.get_file_url())
- def download_html(self):
- captcha_image = tempfile.NamedTemporaryFile(suffix=".gif").name
-
+ def download_html(self):
for i in range(5):
self.html[0] = self.load(self.pyfile.url)
try:
url_captcha_html = re.search('(http://www.{,3}\.megaupload\.com/gencap.php\?.*\.gif)', self.html[0]).group(1)
except:
continue
- self.pyfile.status.waituntil = time() + 10
+
captcha = self.decryptCaptcha(url_captcha_html)
captchacode = re.search('name="captchacode" value="(.*)"', self.html[0]).group(1)
megavar = re.search('name="megavar" value="(.*)">', self.html[0]).group(1)
diff --git a/module/plugins/hoster/MyvideoDe.py b/module/plugins/hoster/MyvideoDe.py
index 5412fd570..f2d2082a7 100644
--- a/module/plugins/hoster/MyvideoDe.py
+++ b/module/plugins/hoster/MyvideoDe.py
@@ -2,6 +2,7 @@
import re
from module.plugins.Hoster import Hoster
+from module.unescape import unescape
class MyvideoDe(Hoster):
__name__ = "MyvideoDe"
@@ -12,14 +13,17 @@ class MyvideoDe(Hoster):
__author_name__ = ("spoob")
__author_mail__ = ("spoob@pyload.org")
- def __init__(self, parent):
- Hoster.__init__(self, parent)
- self.parent = parent
+ def setup(self):
self.html = None
- self.url = self.parent.url
+
+ def process(self, pyfile):
+ self.pyfile = pyfile
+ self.download_html()
+ pyfile.name = self.get_file_name()
+ self.download(self.get_file_url())
def download_html(self):
- self.html = self.load(self.url)
+ self.html = self.load(self.pyfile.url)
def get_file_url(self):
videoId = re.search(r"addVariable\('_videoid','(.*)'\);p.addParam\('quality'", self.html).group(1)
@@ -29,11 +33,11 @@ class MyvideoDe(Hoster):
def get_file_name(self):
file_name_pattern = r"<h1 class='globalHd'>(.*)</h1>"
- return re.search(file_name_pattern, self.html).group(1).replace("/", "") + '.flv'
+ return unescape(re.search(file_name_pattern, self.html).group(1).replace("/", "") + '.flv')
def file_exists(self):
self.download_html()
- self.load(str(self.url), cookies=False, just_header=True)
+ self.load(str(self.pyfile.url), cookies=False, just_header=True)
if self.req.lastEffectiveURL == "http://www.myvideo.de/":
return False
return True