欧阳枫落 2019-12-23 22:58 采纳率: 0%
浏览 811

【python】[数据抽取]简历文档 分句及判断入键?

如:

工作经验2013 /4--至今:上海通方有限公司(50-150人) [ 1 年11个月] 所属行业:互联网/电子商务研发部软件工程师外包到平安金科,开发彩票网站,平安好彩。http://caipiao.wanlitong.com我是在数字彩组,主要负责数字彩的购彩、返彩模块、数字彩活动联调接口以及部分跑批接口编写。期间也被掉到web app组,从事web app的开发。在这里接触到了项目由产生到结束的正规流程,认识到各个部门的合作之重要,积极处理产品和测试提出的问题,满足他们的需求同时提升自己的综合能力。2011 /9--2013 /4:中硕集团(150-500人) [ 1 年7个月] 所属行业:计算机软件技术部PHP程序员主要做公司所需网站。还有dedecms二次开发的管理系统。以下为dedecms制作的 简单的医疗网站:http://www.kkebh.com/ http://www.tjcg120.com/http://www.wzwgyy.com/index.htmlhttp://www.cccg120.com/http://www.hljcgebh.com/2011 /2--2011 /9:上海仁缘数码科技有限公司(50-150人) [ 7个月] 所属行业:计算机软件技术部PHP程序员参与开发了CRM客户关系管理系统。还有一个小型的WDM系统。还有一个公司网站。网站网址:http://www.luxuriant.cn/CRM网址:http://crm.luxhunter.com/WDM网址:wdm.luxhunter.com通过这个项目,对面向对象,已经mvc有了进一步的了解

如何才能将这些分离出来:

2013 /4--至今

上海通方有限公司

50-150人

互联网/电子商务

研发部

软件工程师

外包到平安金科,开发彩票网站,平安好彩。http://caipiao.wanlitong.com我是在数字彩组,主要负责数字彩的购彩、返彩模块、数字彩活动联调接口以及部分跑批接口编写。期间也被掉到web app组,从事web app的开发。在这里接触到了项目由产生到结束的正规流程,认识到各个部门的合作之重要,积极处理产品和测试提出的问题,满足他们的需求同时提升自己的综合能力。2011 /9--2013 /4:中硕集团(150-500人) [ 1 年7个月] 所属行业:计算机软件技术部PHP程序员主要做公司所需网站。还有dedecms二次开发的管理系统。以下为dedecms制作的 简单的医疗网站:http://www.kkebh.com/

并将这对应到键值

2013 /4--至今 判断为工作时间

上海通方有限公司 判断为公司名称

50-150人 判断为公司规模

互联网/电子商务 判断为为公司行业

研发部 判断为部门

软件工程师 判断为职业

那一段 判断为工作内容

因为这些word都是不同的人自己写的,不太统一,不能用像xpath那样规则的方法去提取,所以我想到的是分局再判断录入(如果有更好方案欢迎指出),在这里,希望得到大神的指点,十分感谢!

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-11 17:44
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    要从给定的文本中提取关键信息并将其组织成键值对,我们可以使用自然语言处理技术和正则表达式。下面是一个简单的Python脚本示例,它尝试根据提供的文本来识别和提取关键信息。

    import re
    
    def extract_key_info(text):
        # 正则表达式匹配日期和职位信息
        pattern = r'\d{4}年\d{1,2}月\d{1,2}日'
        date_match = re.search(pattern, text)
        
        if date_match:
            start_date = date_match.start()
            end_date = date_match.end()
            
            # 提取日期范围
            year_range = text[start_date:end_date].split('至')
            if len(year_range) == 2:
                start_year = int(year_range[0])
                end_year = int(year_range[1])
            else:
                start_year = int(year_range[0])
                end_year = None
            
            # 提取公司名、地点、岗位、行业等信息
            company_pattern = r'(.*)\((.*?)\)'
            industry_pattern = r'(.*), (.*)'
            job_title_pattern = r'.*(.*)\n\(.*\)\n(.*)'
            
            company_matches = re.findall(company_pattern, text)
            industry_matches = re.findall(industry_pattern, text)
            job_title_matches = re.findall(job_title_pattern, text)
            
            return {
                'start_date': (start_year, start_date),
                'end_date': (end_year, end_date),
                'company_name': company_matches,
                'industry': industry_matches,
                'job_title': job_title_matches,
            }
        
        else:
            print("无法找到有效的日期或职位信息")
            return None
    
    # 示例文本
    text = """
    2013 /4--至今: 上海通方有限公司(50-150人) [ 1 年11个月]
    
    工作经验2013 /4--至今:上海通方有限公司(50-150人) [ 1 年11个月]
    所属行业:互联网/电子商务研发部软件工程师外包到平安金科,开发彩票网站,平安好彩。
    
    工作经验2011 /9--2013 /4:中硕集团(150-500人) [ 1 年7个月]
    所属行业:计算机软件技术部PHP程序员主要做公司所需网站。还有dedecms二次开发的管理系统。以下为dedecms制作的 简单的医疗网站:
    http://www.kkebh.com/
    
    工作经验2011 /9--2013 /4:上海仁缘数码科技有限公司(50-150人) [ 7个月]
    所属行业:计算机软件技术部PHP程序员参与开发了CRM客户关系管理系统。还有一个小型的WDM系统。还有一个公司网站。网站网址:
    http://www.luxuriant.cn/CRM网址:http://crm.luxhunter.com/WDM网址:wdm.luxhunter.com
    """
    
    result = extract_key_info(text)
    
    if result is not None:
        print(result)
    else:
        print("未找到有效的信息")
    

    此脚本首先定义了一个函数extract_key_info,该函数接受一个字符串参数,并返回一个字典,其中包含日期范围、公司名称、地点、岗位、行业等信息。如果找不到有效的日期或职位信息,则返回None。

    然后我们提供了一个示例文本,该文本包含了多个不同的工作经历。最后,我们调用这个函数并打印结果。

    请注意,这个脚本可能需要一些调整以适应特定的需求,例如,你可能需要更复杂的正则表达式来识别某些格式的日期或职位信息,或者你需要在处理文本时进行更多的预处理。此外,这个脚本仅适用于简单的情况,对于更复杂的数据结构或更精细的分析,可能需要更高级的技术和方法。

    评论

报告相同问题?