summaryrefslogtreecommitdiff
path: root/devfiles/scripts/videos-from-csv.py
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2013-08-31 23:39:29 -0700
committerJesse Morgan <jesse@jesterpm.net>2013-08-31 23:39:29 -0700
commit5ed537a6e3f7f57bd4c97306b7b9995a677c8b7b (patch)
tree1e4e490e96a2c79559807a4452890d3d0cb36543 /devfiles/scripts/videos-from-csv.py
parenta1dfbf19b5e88897b46f4095ff3ef730eba26ba6 (diff)
Adding real videos
Diffstat (limited to 'devfiles/scripts/videos-from-csv.py')
-rwxr-xr-xdevfiles/scripts/videos-from-csv.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/devfiles/scripts/videos-from-csv.py b/devfiles/scripts/videos-from-csv.py
new file mode 100755
index 0000000..6adc8d7
--- /dev/null
+++ b/devfiles/scripts/videos-from-csv.py
@@ -0,0 +1,55 @@
+#!/usr/bin/python
+
+import sys,os,errno
+import csv
+import string
+from string import Template
+
+BASE_URL="http://foursquaregrow.s3-website-us-east-1.amazonaws.com/"
+
+def mkjson(chapter, number, title, length, videos):
+ vtemplate = Template("""{
+ "id": "$id",
+ "number": "$number",
+ "title": "$title",
+ "length": $length,
+ "urls": [""")
+
+ urltemplate = Template("""{"src":"$src", "type":"$type"},""")
+
+ directory = string.lower("videos/" + chapter)
+ try:
+ os.makedirs(directory)
+ except OSError as exc:
+ if exc.errno == errno.EEXIST and os.path.isdir(directory):
+ pass
+ else:
+ raise
+ filename = string.lower(directory + "/" + chapter + "-" + number + ".json")
+ with open(filename, 'w') as outfile:
+ outfile.write(vtemplate.substitute(dict(id=string.lower(chapter+"-"+number),
+ chapter=chapter, number=number, title=title, length=length)))
+
+ for type,src in videos.iteritems():
+ outfile.write(urltemplate.substitute(dict(type=type, src=BASE_URL + src)))
+
+ outfile.seek(-1, 2)
+ outfile.write("]\n}")
+
+# This script reads lines from the given csv file and creates json files for
+# each video in the videos/ directory.
+
+filename = sys.argv[1];
+with open(filename, 'rb') as csvfile:
+ reader = csv.reader(csvfile)
+ for row in reader:
+ chapter = row[0]
+ number = row[1]
+ title = row[2]
+ length = row[3]
+ h264 = row[4]
+
+ videos = { "video/mp4": h264 }
+
+ mkjson(chapter, number, title, length, videos)
+