使用Python读取pdf文件

2023-05-16

学习python,不用再为pdf无法转换而烦恼~~~

下面我们介绍python读取pdf文件(主要是针对文字部分)

1、打开环境

2、安装pdfminer3k包

可以使用jupyter notebook进行安装,如下图所示:

安装成功,大功告成第一步。

3、导入相关的包:

from io import StringIO
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfinterp import process_pdf
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
import re

如图:

4、定义一个读取pdf文档的函数:

 def read_from_pdf(file_path):
    """
    读取pdf文件
    """
    with open(file_path,'rb') as file:
        resource_manager = PDFResourceManager()
        return_str = StringIO()
        lap_params = LAParams()
        device = TextConverter(resource_manager,return_str,laparams=lap_params)
        process_pdf(resource_manager,device,file)
        device.close()
        content = return_str.getvalue()
        return_str.close()
        return re.sub('\s+','',content) 

 5、使用定义的函数进行测试实验:

read_from_pdf('葡萄酒数据挖掘.pdf')

根据你自己的pdf文件和具体情况进行实验,路径可以是绝对路径和相对路径,任意实验。

实验效果还不错,学习起来吧~~~ 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用Python读取pdf文件 的相关文章

随机推荐

  • xxl-job源码之执行器执行任务的核心流程

    xxl job源码之执行器执行任务的核心流程 先来一张图大致看看 如果看的不清晰 xff0c 可以前往地址 xff1a https www processon com view link 604e0b860791291f25613424 密
  • Choreographer 丢帧计算

    在Logcat中 xff0c 我们经常会看到系统输出如下Log xff1a Choreographer Skipped 180 frames The application may be doing too much work on its
  • JWT的数字签名的简单理解

    一 JWT概念 json web token 二 JWT与原始token的区别 JWT是对原始security的oauth2 token的增强 原始的token只是一个uuid xff0c 没有任何意义 JWT包含了部分业务信息 xff0c
  • Docker容器内部无法访问外网原因之一

    问题描述 部署了一个Docker环境 xff0c 宿主机可以访问Internet xff0c 启动了一个容器发现容器里的服务无法访问Internet xff0c Docker网络使用的是桥接 xff08 bridge xff09 模式 问题
  • nohup: failed to run command `java': No such file or directory解决

    程序里远程执行shell命令 xff08 nohup java jar xff09 的执行 xff0c 后台日志报错如下 xff1a nohup failed to run command 96 java 39 No such file o
  • C++中,两个头文件互相引用(转载)

    定义了两个头文件 a h include 34 b h 34 class a b b1 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 b
  • CEF加载本地H5页面,支持JS和C++交互

    今天闲来无事 xff0c 写个CEF相关的博客 xff0c 很多同学还只会加载简单的CEF控件 xff0c 但是涉及到需要和H5页面交互就比较头疼了 xff0c 今天来简单介绍一下 xff0c 有兴趣可以加qq 295282563 xff0
  • Linux下编译tinyhttpd

    Linux下编译tinyhttpd 来源 xff1a https blog csdn net qq673675158 article details 104927245 spm 61 1001 2014 3001 5506 根据说明 xff
  • 语音编码技术,AMR、AMR-NB、AMR-WB、EVS总结

    最近对实时语音编码技术有点兴趣 xff0c 于是了解了一下 一开始听说AMR NB窄带编码 xff0c 搜索才发现更多的编码技术 xff0c 这里总结一下 xff0c 便于日后查看 一 什么是AMR AMR WB 全称Adaptive Mu
  • xxl-job源码之admin调度中心的线程们

    xxl job中的线程们 启动后 xff0c 从控制台看看admin调度中心 span class token string 34 xxl job admin JobFailMonitorHelper 34 span 64 span cla
  • imx6ull移植OpenWRT系统

    参考 xff1a i mx6ul开发板移植openwrt系统 https blog csdn net qq 40614144 article details 105538483 有几点需要补充 xff1a 1 在imx6ull的Linux内
  • 最近的学习目标

    自己动手编写TCP IP协议栈 xff0c 或者简单点的UDP协议栈 xff0c 参考LWIP协议栈 xff1b 自己动手实现一个HTTP服务器 xff0c 参考tinyhttpd xff0c lighttpd xff0c uhttpd x
  • make[1]: *** 没有规则可以创建“all”需要的目标“hello_world.srec”。 停止。

    在uboot1 1 4目录下 make后 xff0c 出现错误 xff1a make 1 没有规则可以创建 all 需要的目标 hello world srec 停止 发现以下方法可以解决 xff1a 今天在新安装的Debian etch中
  • could not resolve host: github.com 问题解决办法

    点击这里 xff0c 查看相关内容 xff1a https blog csdn net zhenfengshisan article details 57566709
  • 解决无法Ping通Github

    解决无法Ping通Github https blog csdn net u012552275 article details 61654857 Ubuntu平台同理 xff1a gedit etc hosts 在最后添加 192 30 25
  • STM32 ST-LINK Utility介绍、下载、安装、使用方法

    STM32 ST LINK Utility介绍 下载 安装 使用方法 原文如下 xff1a https blog csdn net ybhuangfugui article details 52597133
  • nginx高效内存池分析

    背景分析 nginx作为一个高效的服务器服务器框架 xff0c 在网站搭建领域占领了很大比例 xff1b 以成为不可忽视的一大块领域 xff1b 它能如此高效的运行跟他的优秀的内存管理机制有很大的关系 xff0c 今天抽出时间就来学习和分析
  • 判断字符序列是否为回文

    假设称正读和反读都相同的字符序列为 34 回文 34 xff0c 例如 xff0c 39 abba 39 和 39 abcba 39 是回文 xff0c 39 abcde 39 和 39 ababab 39 则不是回文 试写一个算法判别读入
  • c++应用程序内存泄露检测

    前言 xff1a c 43 43 及c这种底层的编程语言 xff0c 在获得更多程序控制自由度的同时 xff0c 也承担了更多内存泄露的风险 xff0c 有些同学想说 xff0c 内存泄露只要看下c 43 43 的应用程序在运行时内存有没有
  • 使用Python读取pdf文件

    学习python xff0c 不用再为pdf无法转换而烦恼 下面我们介绍python读取pdf文件 xff08 主要是针对文字部分 xff09 1 打开环境 2 安装pdfminer3k包 可以使用jupyter notebook进行安装