pyresparser

A simple resume parser used for extracting information from resumes

Built with ❤︎ and

☕ by Omkar Pathak

Features

Extract name

Extract email

Extract mobile numbers

Extract skills

Extract total experience

Extract college name

Extract degree

Extract designation

Extract company names

Installation

You can install this package using

pip install pyresparser

For NLP operations we use spacy and nltk. Install them using below commands:

# spaCy

python -m spacy download en_core_web_sm

# nltk

python -m nltk.downloader words

Documentation

Official documentation is available at: https://www.omkarpathak.in/pyresparser/

Supported File Formats

PDF and DOCx files are supported on all Operating Systems

If you want to extract DOC files you can install textract for your OS (Linux, MacOS)

Note: You just have to install textract (and nothing else) and doc files will get parsed easily

Usage

Import it in your Python project

from pyresparser import ResumeParser

data = ResumeParser('/path/to/resume/file').get_extracted_data()

CLI

For running the resume extractor you can also use the cli provided

usage: pyresparser [-h] [-f FILE] [-d DIRECTORY] [-r REMOTEFILE]

[-re CUSTOM_REGEX] [-sf SKILLSFILE] [-e EXPORT_FORMAT]

optional arguments:

-h, --help show this help message and exit

-f FILE, --file FILE resume file to be extracted

-d DIRECTORY, --directory DIRECTORY

directory containing all the resumes to be extracted

-r REMOTEFILE, --remotefile REMOTEFILE

remote path for resume file to be extracted

-re CUSTOM_REGEX, --custom-regex CUSTOM_REGEX

custom regex for parsing mobile numbers

-sf SKILLSFILE, --skillsfile SKILLSFILE

custom skills CSV file against which skills are

searched for

-e EXPORT_FORMAT, --export-format EXPORT_FORMAT

the information export format (json)

Notes:

If you are running the app on windows, then you can only extract .docs and .pdf files

Result

The module would return a list of dictionary objects with result as follows:

[

{

'college_name': ['Marathwada Mitra Mandal’s College of Engineering'],

'company_names': None,

'degree': ['B.E. IN COMPUTER ENGINEERING'],

'designation': ['Manager',

'TECHNICAL CONTENT WRITER',

'DATA ENGINEER'],

'email': 'omkarpathak27@gmail.com',

'mobile_number': '8087996634',

'name': 'Omkar Pathak',

'no_of_pages': 3,

'skills': ['Operating systems',

'Linux',

'Github',

'Testing',

'Content',

'Automation',

'Python',

'Css',

'Website',

'Django',

'Opencv',

'Programming',

'C',

...],

'total_experience': 1.83

}

]

References that helped me get here

Donation

If you have found my softwares to be of any use to you, do consider helping me pay my internet bills. This would encourage me to create many such softwares

python 简历解析_pyresparser 一个简单的简历解析器,用于从简历中提取信息相关推荐

  1. 使用Python制作一个简单的刷博器

    呵呵,不得不佩服Python的强大,寥寥几句代码就能做一个简单的刷博器. import webbrowser as web import time import oscount=0 while cou ...

  2. 自己动手实现一个简单的JSON解析器

    1. 背景 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.相对于另一种数据交换格式 XML,JSON 有着诸多优点.比如易读性更好,占用空间更少等.在 ...

  3. json string 格式_自己动手实现一个简单的JSON解析器

    作者:田小波 原文:http://cnblogs.com/nullllun/p/8358146.html 1. 背景 JSON(JavaScript Object Notation) 是一种轻量级的数 ...

  4. 基于 Roslyn 实现一个简单的条件解析引擎

    基于 Roslyn 实现一个简单的条件解析引擎 Intro 最近在做一个勋章的服务,我们想定义一些勋章的获取条件,满足条件之后就给用户颁发一个勋章,定义条件的时候会定义需要哪些参数,参数的类型,获取勋 ...

  5. python实现雪花动态图_如何通过雪花算法用Python实现一个简单的发号器

    实现一个简单的发号器 根据snowflake算法的原理实现一个简单的发号器,产生不重复.自增的id. 1.snowflake算法的简单描述 这里的snowflake算法是用二进制的,有64位.其中41 ...

  6. 一个简单的json解析器

    实现一个简单地json解析器. 两部分组成,词法分析.语法分析 词法分析 package com.mahuan.json;import java.util.LinkedList; import jav ...

  7. 通过雪花(snowflake)算法用Python实现一个简单的发号器

    实现一个简单的发号器 根据snowflake算法的原理实现一个简单的发号器,产生不重复.自增的id. 1.snowflake算法的简单描述 这里的snowflake算法是用二进制的,有64位.其中41 ...

  8. 手写了一个简单的JSON解析器,网友直乎:牛!

    作者 | 田小波 来源 | http://r3m2u.cn/4455O 背景 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.相对于另一种数据交换格式 X ...

  9. 一个简单的公式解析器

    为了理解算法中的文法分析,用一个简单的公式解析器来说明. 公式计算是电子表格中的常用功能.主要是实现了些简单的公式计算:    比如:=Sum(A1,A2) 假设我们要实现简单的公式解析,我们从头开始 ...

最新文章

  1. 服务器信号为970101,cDIN_EN_ISO_306.970101精选.pdf
  2. 农村生态是下一个十年的发力点
  3. java final 实例_Java中final实现原理的深入分析(附示例)
  4. Tensorflow框架:卷积神经网络实战--Cifar训练集
  5. EC20模组使用MQTT库对接EMQX,基于STM32F407
  6. java的robot一直按住某个键_SHIFT键在CAD中使用技巧
  7. 一道充满歧义的思维题,全网唯一刁钻分析
  8. java泛型范围_Java泛型类型中的通配符参数在其范围内的正式条件是什么?
  9. 计算机谢夫,切贝谢夫
  10. I Want My Tears Back
  11. 数学建模-线性规划模型基本原理与编程实现
  12. U盘可见空间只有200M的解决方法
  13. 爬虫链家7万条数据,告诉你二手房市场的现状
  14. Android方法数methods超过65536
  15. sqlserver分组统计最新一条数据
  16. 转载:optparse模块OptionParser学习
  17. Python repr函数——学习笔记
  18. win10计算机网络设置在哪,Win10系统电脑中的网络状态在哪里查看
  19. NEO4J-相似度算法03-皮尔逊相似度(Pearson)应用场景简介
  20. 几个分形的matlab实现1,几个分形的matlab实现

热门文章

  1. c语言程序判断某一年是否为闰年
  2. 算法之旅 | 选择排序法
  3. 小程序购物车点击选中当前商品与全选、全不选,如果本店铺下的所有商品全部被选中则选中本店铺。
  4. TED演讲:Jeff Hawkins.大脑的工作原理是什么
  5. Unity 调用Jeromq.jar
  6. mysql:简单求营业额占比
  7. 计算机管理损坏的图像,损坏的图像,教您提示损坏的图像该怎么解决
  8. 远程链接桌面时,电脑防火墙关闭还是开启状态?
  9. IOS 16.0.3 和 watchOS 9.0.2 更新包含错误和安全修复
  10. 服务器系统多少用户什么意思啊,QPS是什么意思?一般的服务器qps多少?