INNER CODE UNIT · Python
convert_epub_and_extract_chapters
DrewThomasson/VoxNovel · 1CPU_Book_processing.py:357
def convert_epub_and_extract_chapters(epub_path):
# Regular expression to match the chapter lines in the output
chapter_pattern = re.compile(r'Detected chapter: \* (.*)')
# List to store the extracted chapter names
chapter_names = []
# Start the conversion process and capture the output
process = subprocess.Popen(['ebook-convert', epub_path, '/dev/null'],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
universal_newlines=True)
# Read the output line by line
for line in iter(process.stdout.readline, ''):
print(line, end='') # You can comment this out if you don't want to see the output
match = chapter_pattern.search(line)
if match: