使用Python通过ebooklib
和BeautifulSoup
等库将epub
文件转换为txt
文件。下
1.安装必要的依赖库:
pip install ebooklib beautifulsoup4 lxml
import ebooklib
from ebooklib import epub
from bs4 import BeautifulSoup
import os
# 读取epub文件并转换为txt文件
def convert_epub_to_txt(epub_file, output_txt_file):
# 打开epub文件
book = epub.read_epub(epub_file)
# 创建一个txt文件
with open(output_txt_file, 'w', encoding='utf-8') as output_file:
# 遍历epub文件的所有items
for item in book.get_items():
# 检查是否是正文的html部分
if item.get_type() == ebooklib.ITEM_DOCUMENT:
# 使用BeautifulSoup解析HTML内容
soup = BeautifulSoup(item.get_body_content(), 'html.parser')
# 将解析后的纯文本写入txt文件
text = soup.get_text()
output_file.write(text + '\n')
# 定义输入和输出文件名
epub_file = 'text.epub'
output_txt_file = 'output_file.txt'
# 调用函数进行转换
convert_epub_to_txt(epub_file, output_txt_file)
print(f"'{epub_file}' 已成功转换为 '{output_txt_file}'!")