-
Notifications
You must be signed in to change notification settings - Fork 5
/
youtube-dl2kodi.py
59 lines (54 loc) · 1.75 KB
/
youtube-dl2kodi.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/python
import sys, getopt, json, os
def main(argv):
global nfotype
global filemovie
try:
opts, args = getopt.getopt(argv,"ht:f:",["tfile=","ffile="])
except getopt.GetoptError:
print 'youtube-dl2kodi.py -t <inputfile> -f <outputfile>'
sys.exit(2)
for opt, arg in opts:
if opt == '-h':
print 'youtube-dl2kodi.py -t <inputfile> -f <outputfile>'
sys.exit()
elif opt in ("-t", "--tfile"):
nfotype = arg
elif opt in ("-f", "--ffile"):
filemovie = arg
filemovie = filemovie.replace("'","")
print 'NFO Type is "', nfotype
print 'JSON file is "', filemovie
if __name__ == "__main__":
main(sys.argv[1:])
filemoviefullname = filemovie
filemovie = os.path.splitext(filemovie)[0]
filemovieext = os.path.splitext(filemovie)[1]
filejson = filemovie + ".info.json"
filenfo = filemovie + ".nfo"
with open(filejson) as data_file:
data = json.load(data_file)
#print data
video_title = data['fulltitle']
video_url = data['uploader_url']
video_plot = data['description']
video_playlist_index = data['playlist_index']
video_playlist_title = data['playlist_title']
if nfotype == "movie":
filenfo = filemovie+"-part"+video_playlist_index + ".nfo"
os.rename(filemoviefullname, filemovie+"-part"+video_playlist_index+"."+filemovieext)
nfo = """<?xml version="1.0" ?>
<movie>
<title>%s</title>
</movie>""" % (video_title)
if nfotype == "tvshow":
nfo = """<?xml version=\"1.0\" ?>
<episodedetails>
<title>%s</title>
<season>1</season>
<episode>%s</episode>
<plot>%s\n%s\n%s</plot>
</episodedetails>""" % (video_title, video_playlist_index, video_url, video_plot, video_playlist_title)
with open(filenfo, "w") as f:
f.write(nfo)
os.remove(filejson)