如何获取"HTTPS"链接和如何在 python 中将 epub 转换为 txt?



我想将epub转换为txt。我首先通过zipfile对xhtml进行epub。然后我尝试通过beautifulsoup将xhtml转换为epub。

但是,由于本地文件名的原因,出现了一个问题。例如,我的xhtml文件名是"C:\Users\abc.xhtml",而不是"HTTPS"。所以美肌群不起作用。

我该如何解决这个问题?

'''
import zipfile
zf = zipfile.ZipFile('C:\Users\abc.epub')
zf.extractall('C:\Users\Desktop\folder')
'''
import re, requests
from bs4 import BeautifulSoup
html = "C:\Users\abc.xhtml"
soup = BeautifulSoup(html, 'lxml')
print(soup.text)

提取时不需要BeautifulSoup。

您可以使用可从PyPi:安装的epub-conversion包将.epub文件转换为文本

pip install epub-conversion

现在,从epub档案中提取文本是一项简单的任务:

逐行:

from epub_conversion.utils import open_book, convert_epub_to_lines
book = open_book("some_file.epub")
lines = convert_epub_to_lines(book)

现在,就像在你的问题中一样,你可以将其作为一个整体打印,也可以选择处理每一行:

print(lines)
# or traverse each line
for line in lines:
print(line) # Or do something completely different 

BeautifulSoup构造函数需要html文件的实际内容,而不是url。试试这个:

with open(html) as f:
contents = f.read()
soup = BeautifulSoupd(contents, 'lxml')

最新更新