如何将PDF文件转换为包含页码的TXT文件?
将PDF转换为带页码的TXT文件的可行方案
方法一:Python脚本自定义格式
用pdfplumber库可以精准提取每页文本并插入自定义格式的页码,步骤如下:
- 安装依赖库:
pip install pdfplumber - 复制下面的代码,替换成你的PDF路径和输出TXT路径后运行:
import pdfplumber def pdf_to_text_with_pages(input_pdf, output_txt): with open(output_txt, 'w', encoding='utf-8') as txt_file: with pdfplumber.open(input_pdf) as pdf: for page_num, page in enumerate(pdf.pages, start=1): # 每页开头添加页码标记,格式可以自己改 txt_file.write(f"=== 第 {page_num} 页 ===\n") # 提取当前页文本并写入 page_text = page.extract_text() if page_text: txt_file.write(page_text + "\n\n") # 替换成你的文件路径 pdf_to_text_with_pages("source.pdf", "output_with_pages.txt")
脚本会在每一页内容的开头插入清晰的页码标识,你可以根据需求修改标记的格式,比如改成“Page X”或者其他样式。
方法二:命令行快速批量处理
用Poppler工具集的pdftotext配合awk命令,能快速给输出文本加上页码:
- 先安装Poppler工具:
- Linux系统:执行
sudo apt install poppler-utils - Mac系统:用Homebrew安装
brew install poppler - Windows系统:下载Poppler二进制包,解压后把bin目录添加到系统环境变量
- Linux系统:执行
- 运行下面的命令(替换成你的PDF文件名和输出文件名):
pdftotext -layout source.pdf temp.txt && awk 'BEGIN{page=1} /^$/{page++; next} {if (NR==1) print "--- 第 " page " 页 ---"; print}' temp.txt > output_with_pages.txt && rm temp.txt
-layout参数会保留PDF原有的排版格式,awk脚本会自动识别分页符,在每页开头插入页码标记,处理完成后会自动清理临时文件。
方法三:Adobe Acrobat可视化导出
如果有Adobe Acrobat的使用权限,直接通过软件可视化操作:
- 打开需要转换的PDF文件,点击「文件」->「导出到」->「文本」
- 在导出设置界面中,找到并勾选「包含页码」选项(不同版本的设置位置可能略有不同)
- 选择保存路径,确认导出即可生成带页码的TXT文件。
内容的提问来源于stack exchange,提问作者Billy
相关产品推荐
相关产品推荐

