应用场景

某员工收到包含几百页的pdf文件,这几百页pdf文件格式都是一样的。员工需要获取其中的一个送货单编号,根据这个送货单号匹配送货项目,送货数量等等,且无法获取excel版本。

样本生成

为了不泄露公司机密,下面将使用百度公开的一个送货单模板生成pdf,来实现送货编号的获取。

假设要获取订单编号,且文件格式为pdf,测试版本共有4页,格式完全一样,但是编号不相同。

首先使用excel自带的pdf打印机生成pdf样本。


导出图片

  • 打开pdf识别工具,选择文件,选择导出并切割


  • 之后会生成一个“导出路径”文件夹,里面有导出的图片和切割的图片。
  • 打开切割后文件夹,发现并没有订单编号的图片,这是因为需要你手动获取切割位置,默认的切割位置是我帮女朋友做他们公司坑爹的pdf文件定位的,所以你在使用的时候需要手动定位
  • 下面将使用网页版ps来获取切割位置

获取切割位置

  1. 打开网页版ps:https://www.uupoop.com/
  2. 上传刚刚导出的图片
  3. 使用矩形框工具,然后拉到“项目编号”所在单元格的左上角,记录一下长宽



  1. 左上角的点,高508,宽198
  2. 然后测试“项目编号”右下角的点所在位置


  1. 右下角的点,长715,宽239。记录下这两个坐标。

再次切割

  • 和之前一样,重新打开工具,填入点(508,198),(715, 239)


  • 查看切割效果,目测还不错,可以作为下面的识别材料了。


获取百度AI文字识别api

  1. 搜索“百度AI开放平台”,点击控制台,注册登录
  2. 点击文字识别,选择创建应用,随便输入应用名和用途


  1. 点击管理应用,记录你的api相关信息。


  1. 填入pdf识别工具自动生成的api.json文件(可以右键,打开方式,记事本打开,推荐使用Notepad++)



  1. 填写好后保存,准备工作完成。

识别片段

  1. 点击“开始识别”即会自动识别刚刚切割生成的图片文件。
  2. 可以选择“普通识别”, “普通识别高精度版”, “识别数字”, “识别票据”


  1. 本次使用普通识别高精度版测试识别效果。



  1. 识别效果

目前准确率100%,没有出现错误。

软件及模板分享

关注并私信“pdf片段识别”即可获取相关文件

python源码开源地址:https://github.com/Tlntin/pdf_tools