add filmsdivision
This commit is contained in:
parent
771d76d8bb
commit
d1299f940f
1 changed files with 39 additions and 0 deletions
39
ox/web/filmsdivision.py
Normal file
39
ox/web/filmsdivision.py
Normal file
|
@ -0,0 +1,39 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vi:si:et:sw=4:sts=4:ts=4
|
||||
import re
|
||||
import string
|
||||
import subprocess
|
||||
import ox
|
||||
|
||||
|
||||
def get_ids():
|
||||
result = []
|
||||
for i in string.letters[26:]:
|
||||
url = "http://www.filmsdivision.org/search.php?title=%s" % i
|
||||
data = ox.cache.read_url(url)
|
||||
links = re.compile('view_video.php\?movId=(.*?)[\'"]', re.DOTALL).findall(data)
|
||||
result += links
|
||||
return list(set(result))
|
||||
|
||||
def get_data(id):
|
||||
result = {}
|
||||
url = "http://www.filmsdivision.org/view_video.php?movId=%s" % id
|
||||
data = ox.cache.read_url(url)
|
||||
result['title'] = re.compile('<td.*?class="vdoheadtxt".*?>(.*?)</td>').findall(data)[0]
|
||||
result['year'] = re.compile('Release: (\d{4})').findall(data)[0]
|
||||
result['duration'] = int(re.compile('Duration: (\d+)mins').findall(data)[0]) * 60
|
||||
result['producer'] = re.compile('Producer: (.*?)\t').findall(data)[0].strip()
|
||||
if 'Director:' in data:
|
||||
result['director'] = re.compile('Director: (.*?)\t').findall(data)[0].strip()
|
||||
else:
|
||||
result['director'] = "Unknown Director"
|
||||
result['url'] = re.compile('value="(.*?.wmv)"').findall(data)[0]
|
||||
return result
|
||||
|
||||
def download_video(url, filename):
|
||||
dirname = os.path.dirname(filename)
|
||||
if not os.path.exists(dirname):
|
||||
os.makedirs(dirname)
|
||||
p = subprocess.Popen(['gst-launch', 'mmssrc', 'location=%s'%url, '!', 'filesink', 'locaiton='%filename])
|
||||
p.wait()
|
||||
return p.returncode == 0
|
Loading…
Reference in a new issue