首页 > 其他分享 >pdfplumber提取pdf中的文字内容全都挤在一起,没有空格怎么办?

pdfplumber提取pdf中的文字内容全都挤在一起,没有空格怎么办?

时间:2023-06-06 14:11:14浏览次数:36  
标签:text 空格 file pdfplumber pdf txt pdfFile

问题:

用如下的代码

import pdfplumber
pdfFile=r'pdf1.pdf'
outputFile='Extract'+pdfFile.split('.')[0]+'.txt'
with pdfplumber.open(pdfFile) as pdf:
    with open(outputFile,'w',encoding='utf-8',buffering=1) as txt_file:
        for page in pdf.pages:
            text = page.extract_text()#提取文本
            print(text)
            txt_file.write(text)

提取出来的文字输出之后是这样,怎么办?

一句话回答:

调低x_tolerance参数(默认为3)

import pdfplumber
pdfFile=r'pdf1.pdf'
outputFile='Extract'+pdfFile.split('.')[0]+'.txt'
with pdfplumber.open(pdfFile) as pdf:
    with open(outputFile,'w',encoding='utf-8',buffering=1) as txt_file:
        for page in pdf.pages:
            text = page.extract_text(x_tolerance=1)#提取文本
            print(text)
            txt_file.write(text)

 

参考资料:pdfplumber中文文档 https://github.com/hbh112233abc/pdfplumber/blob/stable/README-CN.md

标签:text,空格,file,pdfplumber,pdf,txt,pdfFile
From: https://www.cnblogs.com/isakovsky/p/17460384.html

相关文章

  • aspose word与pdf互转
    asposeword与pdf互转packagecom.example.core.mydemo.aspose;importcom.aspose.words.Document;importcom.aspose.words.License;importcom.aspose.words.SaveFormat;importjava.io.ByteArrayInputStream;importjava.io.File;importjava.io.FileOutputStream;......
  • 如何让VSCode格式化代码时运算符两边不要添加空格
    很多格式化软件都是默认运算符两边加空格的,没给奇葩的人留一点选择的余地,经过自己的一番摸索终于找到了VSCode格式化代码时运算符两边不要添加空格的方法。之前在一个帖子上看到的,VSCode中针对C语言的代码格式化配置_vscode格式化c代码_booksyhay的博客-CSDN博客:https://blog.csdn......
  • 代码缩进 : Tab还是空格
    设置所有语言的缩进风格:Tools->Options->TextEditor->Alllanguage->Tabs设置某种语言的缩进风格:Tools->Options->TextEditor->C#->TabsIndentingNone:IDE不进行任何自动缩进Block:Smart:IDE在您编写代码时根据当前的编程语言风格自动缩进。建议永远......
  • 【IDE】WebStorm 调整Tab缩进为2空格 -- 为遵循ESLint语法规范
    在使用Vue开发项目的过程中,为了遵循ESLint语法规范,我们需要把Tab缩进改为2个空格IDEversionWebStorm2018.3步骤一修改这三处的值为:2步骤二把这两处默认的勾选去掉,不让其detection当前文件的Tab缩进注意!通过上面两个步骤,细心的同学会发现,我们只是改变了在JS文件的Tab缩进改为2个空格......
  • app直播源代码,如何自动控制输出空格的个数
    app直播源代码,如何自动控制输出空格的个数#include<stdio.h>intmain(){inti;charstr[5]={'*','*','*','*','*'};for(i=0;i<6;i++){printf("%*s",i,"");//*是占位符由i代替指定域宽,和%2d类似。puts(str);}return0;}​以上就......
  • 删除额外的空格
    概括该函数接口用于删除输入字符串中额外的空格(多个连续空格将被优化为一个空格)参数str:input&output;传入的非空字符串地址。返回值无注意1、传入的str参数必须为可更改的字符串,不允许传入constchar*类型的字符串2、传入的必须为字符流,绝不允许传入字节流,......
  • ABBYY FineReader PDF 16安装教程使用指南及ABBYY16系统配置要求
    本文转载于:https://blog.csdn.net/weixin_55412152/article/details/131030190近年来,随着盲人数字阅读的普及推广,PDF格式的电子书越来越受到大家的关注和喜爱,但受读屏软件功能的限制,扫描版的PDF电子书是无法直接阅读的,这就需要将其转换为可阅读的文档格式,可对于大多数视障读者来说,......
  • 在Web里面用Jasper导出Pdf、HTML、Excel,以及参数说明
    参考:[color=red]ireport导出各种格式(pdf,excel,word,html,print)的例子[/color]:[url]http://mingxiao2010.blog.163.com/blog/static/861904812010665366872/[/url]说明:PDF:JRAbstractExporterexporter=newJRPdfExporter();Excel:JRAbstractExpor......
  • 《CentOS 7.5系统管理与运维实战》pdf电子书免费下载
    本书从实际应用出发,以CentOS 7.5作为操作系统基础,介绍目前企业中常用的软件平台架设和管理方法,通过运维的视角来介绍运维的基础知识和软件平台的常见搭建思路。本书共14章,分为3个知识区块。涵盖的主要内容有:以CentOS7.5特性和安装、运维基础、网络配置与结构为第1个知识区块的......
  • VSCode 如何将已编辑好的python文件中的 tab 键缩进转换成4个空格键缩进
    事情起源:使用vscode维护一个7年前的python项目,发现编辑后运行报错,提示缩进错误,原因是当时的项目使用tab做缩进,而我正在用的vscode是使用4空格做缩进,因此造成了缩进不匹配的问题。  如何解决?把自己的vscode缩进从4空格改为tab貌似是最可行的,但是考虑其他项目的匹配问题又总不能老......