Python提取PDF简历中的信息,写入Excel

今天为大家分享一个真实的案例。

今天接到人力资源部同事的需求,想把他人投递的PDF简历资料里的关键信息数据,提取到excel表中汇总。

7ebbdd0a9266afe29100ac48aa0eefb5.png

目标资料背景:是由求职者自行编制的简历材料,投递到人力资源部。由于其数据格式的不确定,对数据信息的采集带来了一定困难。

6ab1a264aa3ae89fae7df808e482fa1c.png

我的解答思路是:先从PDF文档中抓取文字信息保存到word文档中,然后再从word文档中读取文字信息保存到excel中。

1. 将PDF文档中的文字读取到word中

import pdfplumber
from docx import Document

with pdfplumber.open('1_5的简历1632532336.pdf') as rpdf:
    first_page = rpdf.pages[0]
    print(first_page.extract_text())

doc = Document()
rpdfword = first_page.extract_text()

pages = doc.add_paragraph(rpdfword)

doc.save('测试2.docx')

结果如下:

29a2761dd80b9900ae4c609f01fede3b.png

2. 将word中读到的文字输入到excel中

#导入所需库
from docx import Document
import xlwings as xw

#写数据
def excel_write(a,path,sheetname,write_cols,write_rows):
    app=xw.App(visible=False,add_book=False)
    app.display_alerts=False
    app.screen_updating=False
    wb=app.books.open(path)
    sht=wb.sheets[sheetname]
    weizhi = []
    try:
        i = 0
        while i!=len(write_cols):
            j = 0
            while j!=len(write_rows):
                weizhi.append(write_cols[i]+str(write_rows[j]))
                j+=1
            i+=1
        k=0
        while k!=len(a):
            sht.range(weizhi[k]).value=a[k].text
            print(weizhi[k])
            k+=1
    finally:
        wb.save()
        wb.close()
        app.kill()

if __name__ == "__main__":
    #打开word文档
    document = Document(u"测试2.docx")
    
    #获取所有段落
    all_paragraphs = document.paragraphs    
    print(len(all_paragraphs))
        
    
    excel_path =r'报名人员信息统计表(模板).xls'
    SheetName = r'Sheet1'
    
    wcols = ['c','d','i','h','e','f','j','L']
    #新读取一个简历要换一行
    wrow = [3]
    excel_write(all_paragraphs,excel_path,SheetName,wcols,wrow)

结果如下:

93eaf68e7f3ae803bfeeedc2df5d3ac9.png

在读取word中文字时,需要注意调配相应关键信息字符信息,必要时可以删除非关键信息。

觉得还不错就给我一个小小的鼓励吧!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值