|
@@ -16,6 +16,8 @@
|
|
|
|
|
|
# -*- coding: utf8 -*-
|
|
|
|
|
|
+"""This module takes care of managing and downloading single videos."""
|
|
|
+
|
|
|
import os
|
|
|
import sys
|
|
|
import subprocess
|
|
@@ -23,10 +25,13 @@ import subprocess
|
|
|
from lib_stov import stov_exceptions
|
|
|
|
|
|
|
|
|
-class video(object):
|
|
|
+class Video(object):
|
|
|
+ """This class stores all the attributes of a single youtube video and is
|
|
|
+ also able to download it using youtube-dl.
|
|
|
+ """
|
|
|
def __init__(self, title, description, ytid, conf, downloaded, failcount=0,
|
|
|
- id=0):
|
|
|
- self.__ID = id
|
|
|
+ video_id=0):
|
|
|
+ self._id = video_id
|
|
|
self.title = title
|
|
|
self.description = description
|
|
|
self.ytid = ytid
|
|
@@ -34,7 +39,7 @@ class video(object):
|
|
|
self.downloaded = downloaded
|
|
|
self.failcnt = int(failcount)
|
|
|
|
|
|
- def DownloadVideo(self, directory, itag_value, video_codec):
|
|
|
+ def download_video(self, directory, itag_value, video_codec):
|
|
|
"""Downloads the video by calling youtube-dl as an external process"""
|
|
|
targetdir = self.__conf.values["downloaddir"] + "/" + directory
|
|
|
if os.access(targetdir, os.F_OK) is False:
|
|
@@ -48,22 +53,22 @@ class video(object):
|
|
|
try:
|
|
|
if self.__conf.outputlevel == "default":
|
|
|
subprocess.check_call(["youtube-dl", "-f %s/%s"
|
|
|
- % (itag_value, video_codec), "-t",
|
|
|
+ % (itag_value, video_codec), "-t",
|
|
|
"http://www.youtube.com/watch?v=%s"
|
|
|
% self.ytid],
|
|
|
stderr=sys.stderr,
|
|
|
stdout=open("/dev/null", "w"))
|
|
|
elif self.__conf.outputlevel == "verbose":
|
|
|
subprocess.check_call(["youtube-dl", "-f %s/%s"
|
|
|
- % (itag_value, video_codec), "-t",
|
|
|
- "http://www.youtube.com/watch?v=%s"
|
|
|
+ % (itag_value, video_codec), "-t",
|
|
|
+ "http://www.youtube.com/watch?v=%s"
|
|
|
% self.ytid],
|
|
|
stderr=sys.stderr, stdout=sys.stdout)
|
|
|
elif self.__conf.outputlevel == "quiet":
|
|
|
subprocess.check_call(["youtube-dl", "-f %s/%s"
|
|
|
- % (itag_value, video_codec), "-t",
|
|
|
- "http://www.youtube.com/watch?v=%s"
|
|
|
- % self.ytid],
|
|
|
+ % (itag_value, video_codec), "-t",
|
|
|
+ "http://www.youtube.com/watch?v=%s"
|
|
|
+ % self.ytid],
|
|
|
stderr=open("/dev/null", "w"),
|
|
|
stdout=open("/dev/null", "w"))
|
|
|
except subprocess.CalledProcessError:
|
|
@@ -73,8 +78,6 @@ class video(object):
|
|
|
self.downloaded = 1
|
|
|
return True
|
|
|
|
|
|
- def AssignDBID(self, id):
|
|
|
- self.__ID = id
|
|
|
-
|
|
|
- def GetID(self):
|
|
|
- return self.__ID
|
|
|
+ def get_id(self):
|
|
|
+ """Resturns the id attribute assigned to the object."""
|
|
|
+ return self._id
|