From 8e87787753b2e049917a5491727d285b1c5a7095 Mon Sep 17 00:00:00 2001 From: mkaay Date: Sun, 27 Dec 2009 00:20:21 +0100 Subject: closes #13 --- module/plugins/hoster/MyvideoDe.py | 65 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 module/plugins/hoster/MyvideoDe.py (limited to 'module/plugins/hoster/MyvideoDe.py') diff --git a/module/plugins/hoster/MyvideoDe.py b/module/plugins/hoster/MyvideoDe.py new file mode 100644 index 000000000..5e2eb0b39 --- /dev/null +++ b/module/plugins/hoster/MyvideoDe.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import re +from module.Plugin import Plugin + +class MyvideoDe(Plugin): + + def __init__(self, parent): + Plugin.__init__(self, parent) + props = {} + props['name'] = "MyvideoDe" + props['type'] = "hoster" + props['pattern'] = r"http://(www\.)?myvideo.de/watch/" + props['version'] = "0.1" + props['description'] = """Youtube.com Video Download Plugin""" + props['author_name'] = ("spoob") + props['author_mail'] = ("spoob@pyload.org") + self.props = props + self.parent = parent + self.html = None + self.html_old = None #time() where loaded the HTML + self.time_plus_wait = None #time() + wait in seconds + + def set_parent_status(self): + """ sets all available Statusinfos about a File in self.parent.status + """ + if self.html == None: + self.download_html() + self.parent.status.filename = self.get_file_name() + self.parent.status.url = self.get_file_url() + self.parent.status.wait = self.wait_until() + + def download_html(self): + url = self.parent.url + self.html = self.req.load(url) + + def get_file_url(self): + """ returns the absolute downloadable filepath + """ + if self.html == None: + self.download_html() + videoId = re.search(r"addVariable\('_videoid','(.*)'\);p.addParam\('quality'", self.html).group(1) + videoServer = re.search("rel='image_src' href='(.*)thumbs/.*' />", self.html).group(1) + file_url = videoServer + videoId + ".flv" + print videoId + print videoServer + print file_url + return file_url + + def get_file_name(self): + if self.html == None: + self.download_html() + file_name_pattern = r"

(.*)

" + return re.search(file_name_pattern, self.html).group(1).replace("/", "") + '.flv' + + def file_exists(self): + """ returns True or False + """ + if self.html == None: + self.download_html() + if re.search(r"(.* Das angeforderte Video ist nicht.*)", self.html) != None: + return False + else: + return True -- cgit v1.2.3 From ea94eace93bae1f1f9a3fd27c498f1b5309de50b Mon Sep 17 00:00:00 2001 From: spoob Date: Wed, 13 Jan 2010 15:03:23 +0100 Subject: Fixed MyVideo.de (yuck) --- module/plugins/hoster/MyvideoDe.py | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) (limited to 'module/plugins/hoster/MyvideoDe.py') diff --git a/module/plugins/hoster/MyvideoDe.py b/module/plugins/hoster/MyvideoDe.py index 5e2eb0b39..f7c087091 100644 --- a/module/plugins/hoster/MyvideoDe.py +++ b/module/plugins/hoster/MyvideoDe.py @@ -12,40 +12,24 @@ class MyvideoDe(Plugin): props['name'] = "MyvideoDe" props['type'] = "hoster" props['pattern'] = r"http://(www\.)?myvideo.de/watch/" - props['version'] = "0.1" - props['description'] = """Youtube.com Video Download Plugin""" + props['version'] = "0.9" + props['description'] = """Myvideo.de Video Download Plugin""" props['author_name'] = ("spoob") props['author_mail'] = ("spoob@pyload.org") self.props = props self.parent = parent self.html = None - self.html_old = None #time() where loaded the HTML - self.time_plus_wait = None #time() + wait in seconds - - def set_parent_status(self): - """ sets all available Statusinfos about a File in self.parent.status - """ - if self.html == None: - self.download_html() - self.parent.status.filename = self.get_file_name() - self.parent.status.url = self.get_file_url() - self.parent.status.wait = self.wait_until() + self.url = self.parent.url def download_html(self): - url = self.parent.url - self.html = self.req.load(url) + self.html = self.req.load(self.url) def get_file_url(self): - """ returns the absolute downloadable filepath - """ if self.html == None: self.download_html() videoId = re.search(r"addVariable\('_videoid','(.*)'\);p.addParam\('quality'", self.html).group(1) videoServer = re.search("rel='image_src' href='(.*)thumbs/.*' />", self.html).group(1) file_url = videoServer + videoId + ".flv" - print videoId - print videoServer - print file_url return file_url def get_file_name(self): @@ -55,11 +39,9 @@ class MyvideoDe(Plugin): return re.search(file_name_pattern, self.html).group(1).replace("/", "") + '.flv' def file_exists(self): - """ returns True or False - """ if self.html == None: self.download_html() - if re.search(r"(.* Das angeforderte Video ist nicht.*)", self.html) != None: + self.req.load(str(self.url), cookies=False, just_header=True) + if self.req.lastEffectiveURL == "http://www.myvideo.de/": return False - else: - return True + return True -- cgit v1.2.3 From 2edf36eb45d427262e9f83af90b8b4fc2f69aab8 Mon Sep 17 00:00:00 2001 From: spoob Date: Fri, 15 Jan 2010 15:03:00 +0100 Subject: Better Argument Parsing in Core, littel fixes --- module/plugins/hoster/MyvideoDe.py | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'module/plugins/hoster/MyvideoDe.py') diff --git a/module/plugins/hoster/MyvideoDe.py b/module/plugins/hoster/MyvideoDe.py index f7c087091..0fe315547 100644 --- a/module/plugins/hoster/MyvideoDe.py +++ b/module/plugins/hoster/MyvideoDe.py @@ -1,11 +1,9 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- import re from module.Plugin import Plugin class MyvideoDe(Plugin): - def __init__(self, parent): Plugin.__init__(self, parent) props = {} @@ -25,22 +23,17 @@ class MyvideoDe(Plugin): self.html = self.req.load(self.url) def get_file_url(self): - if self.html == None: - self.download_html() videoId = re.search(r"addVariable\('_videoid','(.*)'\);p.addParam\('quality'", self.html).group(1) videoServer = re.search("rel='image_src' href='(.*)thumbs/.*' />", self.html).group(1) file_url = videoServer + videoId + ".flv" return file_url def get_file_name(self): - if self.html == None: - self.download_html() file_name_pattern = r"

(.*)

" return re.search(file_name_pattern, self.html).group(1).replace("/", "") + '.flv' def file_exists(self): - if self.html == None: - self.download_html() + self.download_html() self.req.load(str(self.url), cookies=False, just_header=True) if self.req.lastEffectiveURL == "http://www.myvideo.de/": return False -- cgit v1.2.3