首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >R语言操作pdf文档

R语言操作pdf文档

作者头像
一粒沙
发布2021-07-05 15:29:45
发布2021-07-05 15:29:45
2.3K0
举报
文章被收录于专栏:R语言交流中心R语言交流中心
今天给大家介绍一个可以读取pdf文件信息的R包pdftools。此包基于Poppler库(https://poppler.freedesktop.org/)进行解析pdf文件。在这里我们就不深入剖析这个Poppler库了,直接看下pdftools包的使用。首先是包的安装:
代码语言:javascript
复制
install.packages(“pdftools”)
install.packages("tesseract")

接下来我们直接通过实例来看下包的相关功能:

代码语言:javascript
复制
##pdf文件的载入
pdf_file <- file.path(R.home("doc"),"NEWS.pdf")
 
##基础信息获取
info <-pdf_info(pdf_file)
代码语言:javascript
复制
text <-pdf_text(pdf_file)
代码语言:javascript
复制
data <-pdf_data(pdf_file)##读取pdf中每个文本的坐标及对应的文本
代码语言:javascript
复制
fonts <-pdf_fonts(pdf_file)##字体
files <-pdf_attachments(pdf_file)##附件
toc <-pdf_toc(pdf_file)##获取目录中的标题
pagesize <-pdf_pagesize(pdf_file)##每个页面的大小尺寸
pdfpage= pdf_length(pdf_file)##获取文档的页数
spilt=pdf_split(pdf_file)##分割pdf的每一页
psubset=pdf_subset(pdf_file,pages=1)#获取pdf文件的指定页面并保存
代码语言:javascript
复制
###pdf转化为图像
 
##单页转化
bitmap=pdf_render_page(pdf_file,page=1)##读取一页
png::writePNG(bitmap,"page.png")
代码语言:javascript
复制
##多页转化

pdf_convert(pdf_file,format="jpeg",pages = 1:3)
代码语言:javascript
复制
##pdf图像中文字的提取
library(tesseract)
pdf_ocr_text(pdf_file)##提取pdf图像文档,并把每一页的图像单独存储
代码语言:javascript
复制
pdf_ocr_data(pdf_file)#获取pdf图像中各坐标的文本信息

至此对pdf文档进行文本的提取过程基本完成。当然这里有一个漏洞那就是没有开发提取pdf中表格的功能,为此有团队开发了对应的包pdftables。但是这个地方需要在https://pdftables.com/注册ID才可以应用提取表格功能,并且有页数限制。另外还有就是从pdf中提取图像的工具也并未发现。为此还是希望大牛进行后期的扩展。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-05-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 R语言交流中心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档