नमक के अपने छोटे से दाने को जोड़ना, यह पायथन लिपि है जिसे मैं कई अध्यायों में विभाजित करने के लिए आया था। संख्या को स्वचालित रूप से निकाला जाता है।
ध्यान दें कि:
- आपको हैंडब्रेक सीएलआई की जरूरत है (वर्तमान में इस पते पर उपलब्ध है: https://handbrake.fr/downloads2.php )
- आपको अपने PATH में Handbrake CLI का इंस्टॉलेशन फोल्डर रखना होगा
आपको बस स्क्रिप्ट के तर्क के रूप में डीवीडी के स्थान के साथ निम्नलिखित पायथन स्क्रिप्ट को कॉल करने की आवश्यकता है।
#!python
import os
import subprocess
import re
import sys
# Ugly but simple way to get first argument = folder with DVD
# We will get DVD name by removing all / and \
dvd = sys.argv[1]
dvd_name = re.sub(r'.*[/\\]', r'', dvd).rstrip('/').rstrip('\\')
s = subprocess.Popen(
f'HandBrakeCLI -i "{dvd}" -t 0', stdout=subprocess.PIPE, stderr=subprocess.STDOUT
)
count = 0
for line in s.stdout:
if re.search(rb"\+ title [0-9]+:", line):
count += 1
print(f'==Extracting {count} chapters from "{dvd}"==')
for i in range(1,count+1):
output = f"{dvd_name}_{i}.mp4"
cmd = f'HandBrakeCLI --input {dvd} --title {i} --preset Normal --output "{output}"'
log = f"encoding_{output}.log"
with open(log, 'wb') as f:
s = subprocess.Popen(cmd, stdout=f, stderr=subprocess.STDOUT)
s.communicate()
if not os.path.isfile(output):
print(f'ERROR during extraction of "{output}"!')
else:
print(f'Successfully extracted Chapter #{i} to "{output}"')