当前位置: 首页 > 专利查询>武汉大学专利>正文

一种文本信息自动提取方法技术

技术编号:27935782 阅读:11 留言:0更新日期:2021-04-02 14:15
本发明专利技术公开了一种文本信息自动提取方法,现有招标文件标的物的参数信息提取均靠人工抽取,需要花费大量人工及时间,耗时耗力。本发明专利技术使用自然语言处理技术对招标文本进行自动化的参数信息抽取,设计了标书文本结构化,标的物参数信息提取,提取报告体系,标书文本结构化包括利用利用pypdf2提取书签信息,利用pdfplumber识别pdf标书文本,利用正则对文本进行清洗,随后利用规则匹配对文本进行结构化分析处理。标的物参数信息提取通过利用正则技术对结构化后的标书文本中标的物的技术参数信息进行精准识别和提取。最后利用前述过程中的信息建立抽取报告,直观反映整个抽取情况。

【技术实现步骤摘要】
一种文本信息自动提取方法
本专利技术属于计算机
,涉及一种文本信息自动提取方法,具体涉及一种面向招标文本的标的物参数信息自动提取方法。
技术介绍
随着现在信息技术的智能化、自动化的不断发展,给人们的生活带来了巨大的影响和方便,能自动的把文字转换为图片,又可以将图片转换为文字,越来越智能化了,越来越方便,便捷;但是面向一些具体领域,需要的信息具体特殊性,而现有的技术很难针对性地进行信息提取,例如面向招标文本的标的物参数信息自动提取。招标文件是采购需求的集中体现,招标文件的质量直接决定了招标结果的成败。通过利用过往的招标文件编制招标标准文件,能够统一规范招标行为,提高招标质量,促进管理水平的提升,同时能够提高项目成功率,节约招标文件的编制时间。然而现有招标标准文件均靠人工编制,特别是标的物参数、技术要求等部分,需要很多精通技术的专业人员,耗费大量时间精力去提取信息。目前迫切需要一种针对特殊信息提取的技术。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种文本信息自动提取方法,用于解决招标文本的标的物参数信息自动抽取问题,以替代当前耗时耗力的人工抽取方法。本专利技术所采用的技术方案是:一种文本信息自动提取方法,其特征在于,包括以下步骤:步骤1:对输入文本进行批量预处理,将输入文本转成pdf格式文本;步骤2:对pdf格式文本进行结构化处理;步骤2的具体实现包括以下子步骤:步骤2.1:输入批量pdf格式文本;步骤2.2:利用pypdf2提取pdf格式文本中的书签信息,构建规则对书签名进行正则匹配,得到匹配出的章节书签,保存书签的名称以及页面位置信息;其中,根据书签名提取章节书签的规则为:Pattern=“(第.*章|第.*部分)”;步骤2.3:基于步骤2.2中取出的章节书签信息对pdf格式文本进行划分,分别得到文件中的各章节文本;步骤2.4:基于步骤2.3中获得的各章节文本,构建特定的正则规则对该章节文本进行划分,获取章节中各小节的名称以及位置;其中,提取小节的正则规则为:Pattern=“.*第.节.”;步骤3:对指定标的物的相关信息进行定位识别及抽取;步骤4:利用上述步骤的中间信息建立抽取报告,生成抽取结果。作为优选,步骤1中,利用winAPI对输入文本进行批量预处理,利用pythonwin32库,调用word底层vba,将word格式文本转成pdf格式文本。作为优选,步骤2.3的具体实现包括以下子步骤:步骤2.3.1:根据书签中的书签名构建正则规则定位各章节,利用其对应的页面位置信息截取原pdf文件;步骤2.3.2:利用pdfplumber识别截取后的章节文本;步骤2.3.3:利用自然语言处理技术对文本进行清洗,清理文本中的空格、换行符以及页眉页脚,注释页码等无效干扰文本;步骤2.3.4:将清洗后的各章节文本存储至txt文件。作为优选,步骤3的具体实现包括以下子步骤:步骤3.1:构建正则规则定位相关信息所在的章节;其中,相关信息中的技术参数内容所在章节的正则表达式为:Pattern=“.*(技术|参数|要求).*”;其他信息正则表达式构建原理与技术参数正则表达式构建原理相同;步骤3.2:基于步骤3.1得到的章节,利用步骤2.4得到的小节信息,构建规则匹配到具体的技术参数小节;其中,匹配技术参数小节的正则表达式为:Pattern=“(.*(技术|参数).*要求)|(.*技术.*参数.*)”;步骤3.3:利用正则匹配精准定位到具体的参数文本在小节中的位置;其中,定位具体的参数文本的正则表达式为:Pattern=“\W?\d+\W*[\u4e00-\u9fa5]*(技术|参数|要求)[\u4e00-\u9fa5]*(:|:)?”;步骤3.4:从步骤3.3定位的内容开始,逐行进行参数识别,提取出相应的参数类型、参数名和参数值;步骤3.5:将步骤3.4提取出的参数名和参数值,连同标的物类型,提取来源(文件名)以键值对的格式一起存入python字典类型中;步骤3.8:将上述批量文件提取出的参数存入json文件中,方便后续处理。作为优选,步骤3.2中,由于一个标书中通常有多个标包的参数信息,为进行精准识别提取,针对招投标行业中的标书,若一个标书中包含多个标包的参数信息,则在步骤3.2提取的技术参数小节中再次构建规则划分各个标包,分别得到各个标包的技术参数小节内容;其中,划分各个标包的技术参数小节的正则表达式为:Pattern=“.*第.*(包|项).*”;基于划分出的各个标包的技术参数小节内容,筛选得到指定的标的物所属的技术参数小节。作为优选,所述筛选得到指定的标的物所属的技术参数小节,是通过检测各标包技术参数小节内容开头是否包含指定标的物的名称来判断当前技术参数小节是否属于指定标的物。作为优选,步骤3.4的具体实现包括以下子步骤:步骤3.6.1:构建特定的规则,依次判断该行文本是否为一级标题(如“1.参数信息”);若是,则该标题表明参数类型,则修改当前参数类型为清洗掉标题后的文本内容,本流程结束;若否,转向步骤3.6.2;其中,判断文本是否为一级标题的正则表达式为:Pattern=“\W?\d+\W*[\u4e00-\u9fa5]+(:|:)?”;步骤3.6.2:判断该行文本是否为二级标题且包含“参数名:参数值”的格式文本(如1.1生产能力:大于12000t/h);若是,则该行文本是标的物参数的格式化描述,利用正则提取出参数名和参数值,连同当前参数类型作为一条参数项一起保存至字典中,本流程结束;若否,转向步骤3.6.3;其中,判断文本是否为二级标题且包含“参数名:参数值”的正则表达式为:Pattern=“\W?\d+\W+\d+\W*[\u4e00-\u9fa5]+(:|:).+”;步骤3.6.3:判断该行文本是否为二级标题(如2.2采煤机阀类件要有过滤器);若是,则该行文本为参数的具体文本描述,直接将整行文本当作参数名,将参数值置空,执行保存当前参数项操作,本流程结束;若否,转向步骤3.6.4;其中,判断文本是否为二级标题的正则表达式为:Pattern=“\W?\d+\W+\d+\W*[\u4e00-\u9fa5]+(:|:).+”;步骤3.6.4:判断该行文本是否为三级标题;若是,该行文本为上一条参数信息的子项,则将该行文本清洗掉标题后加入上一条参数项的参数值中,本流程结束;若否,转向步骤3.6.5;其中,判断文本是否为三级标题的正则表达式为:Pattern=“\W?\d+(\W+\d+){2}\W*”;步骤3.6.5:以上条件都不满足,则表明该行文本为上一条参数项后续文本,则直接将该行文本加入到上一条参数项的参数值中;步骤3.6.6:循环执行上述步骤3.6.1-步骤3.6.5,至该标包文本内容结束。作为优选,步骤4本文档来自技高网...

【技术保护点】
1.一种文本信息自动提取方法,其特征在于,包括以下步骤:/n步骤1:对输入文本进行批量预处理,将输入文本转成pdf格式文本;/n步骤2:对pdf格式文本进行结构化处理;/n步骤2的具体实现包括以下子步骤:/n步骤2.1:输入批量pdf格式文本;/n步骤2.2:利用pypdf2提取pdf格式文本中的书签信息,构建规则对书签名进行正则匹配,得到匹配出的章节书签,保存书签的名称以及页面位置信息;/n其中,根据书签名提取章节书签的规则为:Pattern=“(第.*章|第.*部分)”;/n步骤2.3:基于步骤2.2中取出的章节书签信息对pdf格式文本进行划分,分别得到文件中的各章节文本;/n步骤2.4:基于步骤2.3中获得的各章节文本,构建特定的正则规则对该章节文本进行划分,获取章节中各小节的名称以及位置;/n其中,提取小节的正则规则为:Pattern=“.*第.节.”;/n步骤3:对指定标的物的相关信息进行定位识别及抽取;/n步骤4:利用上述步骤的中间信息建立抽取报告,生成抽取结果。/n

【技术特征摘要】
1.一种文本信息自动提取方法,其特征在于,包括以下步骤:
步骤1:对输入文本进行批量预处理,将输入文本转成pdf格式文本;
步骤2:对pdf格式文本进行结构化处理;
步骤2的具体实现包括以下子步骤:
步骤2.1:输入批量pdf格式文本;
步骤2.2:利用pypdf2提取pdf格式文本中的书签信息,构建规则对书签名进行正则匹配,得到匹配出的章节书签,保存书签的名称以及页面位置信息;
其中,根据书签名提取章节书签的规则为:Pattern=“(第.*章|第.*部分)”;
步骤2.3:基于步骤2.2中取出的章节书签信息对pdf格式文本进行划分,分别得到文件中的各章节文本;
步骤2.4:基于步骤2.3中获得的各章节文本,构建特定的正则规则对该章节文本进行划分,获取章节中各小节的名称以及位置;
其中,提取小节的正则规则为:Pattern=“.*第.节.”;
步骤3:对指定标的物的相关信息进行定位识别及抽取;
步骤4:利用上述步骤的中间信息建立抽取报告,生成抽取结果。


2.根据权利要求1所述的文本信息自动提取方法,其特征在于:步骤1中,利用winAPI对输入文本进行批量预处理,利用pythonwin32库,调用word底层vba,将word格式文本转成pdf格式文本。


3.根据权利要求1所述的文本信息自动提取方法,其特征在于,步骤2.3的具体实现包括以下子步骤:
步骤2.3.1:根据书签中的书签名构建正则规则定位各章节,利用其对应的页面位置信息截取原pdf文件;
步骤2.3.2:利用pdfplumber识别截取后的章节文本;
步骤2.3.3:利用自然语言处理技术对文本进行清洗,清理文本中的无效干扰文本;
步骤2.3.4:将清洗后的各章节文本存储至txt文件。


4.根据权利要求1所述的文本信息自动提取方法,其特征在于,步骤3的具体实现包括以下子步骤:
步骤3.1:构建正则规则定位相关信息所在的章节;其中,相关信息中的技术参数内容所在章节的正则表达式为:Pattern=“.*(技术|参数|要求).*”;其他信息正则表达式构建原理与技术参数正则表达式构建原理相同;
步骤3.2:基于步骤3.1得到的章节,利用步骤2.4得到的小节信息,构建规则匹配到具体的技术参数小节;其中,匹配技术参数小节的正则表达式为:Pattern=“(.*(技术|参数).*要求)|(.*技术.*参数.*)”;
步骤3.3:利用正则匹配精准定位到具体的参数文本在小节中的位置;其中,定位具体的参数文本的正则表达式为:Pattern=“\W?\d+\W*[\u4e00-\u9fa5]*(技术|参数|要求)[\u4e00-\u9fa5]*(:|:)?”;
步骤3.4:从步骤3.3定位的内容开始,逐行进行参数识别,提取出相应的参数类型、参数名和参数值;
步骤3.5:将步骤3.4提取出的参数名和参数值,连同标的物类型,提取文件名以键值对的格式一起存入python字典类型中;
步骤3.8:将上...

【专利技术属性】
技术研发人员:刘金硕王晨阳邓娟黄朔刘宁唐浩洲
申请(专利权)人:武汉大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1