返回顶部
首页 > 资讯 > 后端开发 > Python >Python自动化实践之筛选简历
  • 476
分享到

Python自动化实践之筛选简历

python 2022-06-14 00:06:27 476人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 Word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。简历相

本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 Word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。

简历相关信息如下:



定义 ReadDoc 类用以读取 word 文件

已知条件:

想要查找包含指定关键字的简历(比如 Python、Java)


实现思路:

批量读取每一个 word 文件(通过 glob 获取 word 信息),将他们的所有可读内容获取,并通过关键字方式筛选,拿到目标简历地址。


这里有个需要注意的地方就是,并不是所有的 "简历" 都是以段落的形式呈现的,比如从 "猎聘" 网下载下来的简历就是 "表格形式" 的,而 "boss" 上下载的简历就是 "段落形式" 的,这里再进行读取的时候需要注意下,我们做的演示脚本练习就是 "表格形式" 的。


这里的话,我们就可以专门定义一个 "ReadDoc" 的类,里面定义两个函数,分别用于读取 "段落" 和 "表格" 。

实操案例脚本如下:

# coding:utf-8from docx import Documentclass ReadDoc(object):              # 定义一个 ReadDoc ,用以读取 word 文件
    def __init__(self, path):       # 构造函数默认传入读取 word 文件的路径
        self.doc = Document(path)
        self.p_text = ''
        self.table_text = ''

        self.get_para()
        self.get_table()


    def get_para(self):             # 定义 get_para 函数用以读取 word 文件的段落
        for p in self.doc.paragraphs:
            self.p_text += p.text + '\n'    # 读取的段落内容进行换行
        print(self.p_text)


    def get_table(self):            # 定义 get_table 函数循环读取表格内容
        for table in self.doc.tables:
            for row in table.rows:
                _cell_str = ''      # 获取每一行的完整信息
                for cell in row.cells:
                    _cell_str += cell.text + ','    # 每一行加一个 "," 隔开
                self.table_text += _cell_str + '\n'     # 读取的表格内容进行换行
        print(self.table_text)if __name__ == '__main__':
    path = glob.os.path.join(glob.os.getcwd(), 'test_file/简历1.docx')
    doc = ReadDoc(path)
    print(doc)

看一下 ReadDoc 类的运行结果



定义 search_word 函数用以筛选 word 文件内容符合想要的简历

OK,上文已经成功读取了简历的 word 文档,接下来我们要将读取到的内容通过帅选关键字信息的方式,过滤出包含有关键字的简历。

实操案例脚本如下:

# coding:utf-8import globfrom docx import Documentclass ReadDoc(object):              # 定义一个 ReadDoc ,用以读取 word 文件
    def __init__(self, path):       # 构造函数默认传入读取 word 文件的路径
        self.doc = Document(path)
        self.p_text = ''
        self.table_text = ''

        self.get_para()
        self.get_table()


    def get_para(self):             # 定义 get_para 函数用以读取 word 文件的段落
        for p in self.doc.paragraphs:
            self.p_text += p.text + '\n'    # 读取的段落内容进行换行
        # print(self.p_text)        # 调试打印输出 word 文件的段落内容


    def get_table(self):            # 定义 get_table 函数循环读取表格内容
        for table in self.doc.tables:
            for row in table.rows:
                _cell_str = ''      # 获取每一行的完整信息
                for cell in row.cells:
                    _cell_str += cell.text + ','    # 每一行加一个 "," 隔开
                self.table_text += _cell_str + '\n'     # 读取的表格内容进行换行
        # print(self.table_text)    # 调试打印输出 word 文件的表格内容def search_word(path, targets):     # 定义 search_word 用以筛选符合内容的简历;传入 path 与 targets(targets 为列表)
    result = glob.glob(path)
    final_result = []               # 定义一个空列表,用以后续存储文件的信息

    for i in result:             # for 循环获取 result 内容

        isuse = True                # 是否可用

        if glob.os.path.isfile(i):       # 判断是否是文件
            if i.endswith('.docx'):      # 判断文件后缀是否是 "docx" ,若是,则利用 ReadDoc类 实例化该文件对象
                doc = ReadDoc(i)
                p_text = doc.p_text         # 获取 word 文件内容
                table_text = doc.table_text
                all_text = p_text + table_text                for target in targets:      # for 循环判断关键字信息内容是否存在
                    if target not in all_text:
                        isuse = False
                        break

                if not isuse:
                    continue
                final_result.append(i)
    return final_resultif __name__ == '__main__':
    path = glob.os.path.join(glob.os.getcwd(), '*')
    result = search_word(path, ['python', 'golang', 'React', '埋点'])      # 埋点是为了演示效果,故意在 "简历1.docx" 加上的
    print(result)

运行结果如下:



以上就是Python自动化实践之筛选简历的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: Python自动化实践之筛选简历

本文链接: https://lsjlt.com/news/32911.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python自动化实践之筛选简历
    本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。简历相...
    99+
    2022-06-14
    python
  • PythonWord文件自动化实战之简历筛选
    目录简历筛选定义 ReadDoc 类用以读取 word 文件定义 search_word 函数用以筛选 word 文件内容符合想要的简历上一章节我们练习了通过表格和段落获取 word...
    99+
    2024-04-02
  • 怎么使用Python实现自动化筛选简历
    本篇内容介绍了“怎么使用Python实现自动化筛选简历”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!简历筛选简历相关信息如下:定义 Read...
    99+
    2023-07-02
  • Python数据分析之 Pandas Dataframe条件筛选遍历详情
    目录一、条件筛选二、Dataframe数据遍历for...in...语句iteritems()方法iterrows()方法itertuples()方法一、条件筛选 查询Pandas ...
    99+
    2024-04-02
  • C#实现文件筛选读取并翻译的自动化工具
    目录背景思路准备工作代码实现背景 我们项目一开始的所有提示都是中文,后来要做国际化。发现项目中的带双引号的中文居然有 2.3 w 多条!!!简直让人欲哭无泪......
    99+
    2023-03-19
    C#文件筛选 C#文件读取 C#文件翻译 C#自动化
  • Python数据分析之Pandas Dataframe条件筛选遍历的方法
    这篇文章主要介绍“Python数据分析之Pandas Dataframe条件筛选遍历的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python数据分析之Pandas Dat...
    99+
    2023-06-30
  • python自动化实现的简单使用
    目录环境配置定位1.Link_text定位超链接2.混合元素定位3.Xpath定位(通常)4.css定位操作1.实现输入框自动输入2.清空输入框3.上传文件4.自动化执行javaSc...
    99+
    2024-04-02
  • python3自动化实践2之第一个测试脚
    场景设计: 1. 操作案例:https://www.baidu.com  2. 测试场景     打开Baidu     输入selenium     点击搜索按钮      关闭浏览器#-*- encoding:utf-8 -*- #导...
    99+
    2023-01-31
    第一个 测试
  • python之自动化测试
    功能: 在ubuntu上面,通过shell脚本打开 VirtualBox(windows xp),并调用XP里面的python脚本,来打开一些windows上面的软件,并做模拟操作,完成之后关闭VirtualBox(windows xp)...
    99+
    2023-01-31
    测试 python
  • WEB-UI自动化测试实践
    一、设计背景随着IT行业的发展,产品愈渐复杂,web端业务及流程更加繁琐,目前UI测试仅是针对单一页面,操作量大。为了满足多页面功能及流程的需求及节省工时,设计了这款UI 自动化测试程序。旨在提供接口,集成到蜗牛自动化测试框架,方便用例的设...
    99+
    2023-06-04
  • 详解Python自动化之文件自动化处理
    一、生成随机的测验试卷文件 假如你是一位地理老师, 班上有 35 名学生, 你希望进行美国各州首府的一个小测验。不妙的是,班里有几个坏蛋, 你无法确信学生不会作弊。你希望随机调整问...
    99+
    2024-04-02
  • python实现自动化之文件合并
    假如公司需要统计每个员工的个人信息,制定好模板后,由员工填写,然后发送到综合部进行汇总,在这种情况下,如果公司有上百位员工的信息需要统计,且采用纯手工进行复制粘贴的方式进行汇总,则将是一项耗时费力易错的工作。本文主要...
    99+
    2022-06-02
    python 文件合并
  • C#如何实现文件筛选读取并翻译的自动化工具
    这篇文章主要介绍了C#如何实现文件筛选读取并翻译的自动化工具的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#如何实现文件筛选读取并翻译的自动化工具文章都会有所收获,下面我们一起来看看吧。思路首选读取项目文件夹...
    99+
    2023-07-05
  • Android UI自动化测试佳实践
      一、概述   Android系统测试和Web的测试类似,有两类自动化的方式:录制回放与手动开发自动化case。由于录制回放在长期维护与代码重用方面存在问题,这里主要...
    99+
    2022-06-06
    ui自动化测试 测试 Android
  • 全链路压测自动化实践
    境内度假是一个低频、与节假日典型相关的业务,流量在节假日较平日会上涨五到十几倍,会给生产系统带来非常大的风险。因此,在2018年春节前,基于美团基础的压测平台Quake,我们把整个境内度假业务接入了全链路压测,来系统性地评估容量和发现隐患,...
    99+
    2023-06-05
  • ASP API 筛选器的权威指南:数据处理自动化
    ...
    99+
    2024-04-02
  • 如何实现Python办公自动化之Excel
    本篇内容介绍了“如何实现Python办公自动化之Excel”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!准备使用 Python 操作 Exc...
    99+
    2023-06-16
  • Python办公自动化之Excel(中)
    目录准备读取数据写入数据修改数据进阶用法最后准备 首先,我们需要安装依赖包 # 安装依赖包 pip3 install openpyxl 读取数据 使用 openpyxl 中的&...
    99+
    2022-06-02
    python 办公自动化 python 自动化excel
  • Python写自动化之SVN更新
    在远程机器上执行脚本时,为了能够保证脚本的实时性,我们一般会将脚本存放到SVN上,远程机器通过SVN的操作去更新脚本; SVN更新脚本只需要2步就可以实现了,这个地方使用到pysvn库,看下实现 # 初始化client self.clie...
    99+
    2023-01-31
    Python SVN
  • Python自动化运维:Django之U
    准备首先新建一个Django 项目django-admin startproject urlTest进入manage.py所在目录后./manage.py startapp app1 ./manage.py startpap app2此时我...
    99+
    2023-01-31
    Python Django
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作