2022-03-17 18:39:30 +05:30

45 lines
1.5 KiB
Python

#!/usr/bin/env python3
import subprocess
import os
import sys
def downloadVideo(search_query,search_query_range):
# animdl download "demon slayer" -r 1
print('animdl', 'download',search_query,f'-r {str(search_query_range)}','--auto')
subprocess.run(['animdl', 'download',search_query,f'-r {str(search_query_range)}','--auto'])
def getalltsfiles():
walk_dir = os.getcwd()
for root, _, files in os.walk(walk_dir):
for file in files:
if (file.split(".")[-1].lower() == 'ts'):
filePath = os.path.join(root, file)
mp4FilePath = os.path.join(root, os.path.splitext(file)[0] + ".mp4")
if os.path.isfile(mp4FilePath):
continue
return filePath, mp4FilePath
def convert2mp4(infile, outfile):
# ffmpeg -i E01.ts -c:v copy -c:a copy -preset:v ultrafast -segment_list_flags +live video.mp4
subprocess.run(['ffmpeg','-i',infile,'-c:v','copy','-c:a','copy','-preset:v','ultrafast','-segment_list_flags','+live',outfile])
def main(argv):
search_query = argv[1]
print(search_query)
search_query_range = argv[2]
#anime_quality = argv[3] if len(sys.argv) >= 4 else '720[subtitle]'
search_query_in_quotes = f'"{search_query}"'
downloadVideo(search_query_in_quotes,search_query_range)
try:
infile, outfile = getalltsfiles()
except:
infile, outfile = None,None
convert2mp4(infile,outfile)
os.remove(infile)
main(sys.argv[0:])