Forráskód Böngészése

kvTree识别优化

luojiehua 5 hónapja
szülő
commit
528c3853ed
1 módosított fájl, 233 hozzáadás és 198 törlés
  1. 233 198
      BiddingKG/dl/interface/html_2_kvtree.py

+ 233 - 198
BiddingKG/dl/interface/html_2_kvtree.py

@@ -348,7 +348,17 @@ def dom_to_tree(node):
         json_obj["name"] = json_obj.get("tag")
         return json_obj
     elif node.string and node.string.strip():  # 如果是纯文本节点
-        return DotDict({"tag":"text","name":"text","text": node.string.strip()})
+        _text = node.string.strip()
+        _text = re.sub('\xa0','',_text)
+        list_text = re.split("\s",_text)
+        _text = ""
+        for _t in list_text:
+            if len(_t)<3:
+                if len(_t)>0:
+                    _text += _t
+            else:
+                _text += _t+" "
+        return DotDict({"tag":"text","name":"text","text": _text})
     return None  # 忽略空白字符
 
 def tree_pop_parent(tree):
@@ -441,47 +451,63 @@ def extract_kv_from_sentence(sentence):
                     list_kv.append(_d)
 
         elif len(list_span)>1:
-            _begin = 0
 
-            for _i in range(len(list_span)-1):
-                _end = list_span[_i+1][0]
+            _begin,_end = list_span[0]
+            if _begin<20 and len(sentence)>100:
+                _d = DotDict({"key":sentence[0:_begin],"value":sentence[_end:]})
+                _d["position"] = {"key_begin_sentence":0,
+                              "key_begin_sentence_start":0,
+                              "key_end_sentence":0,
+                              "key_end_sentence_end":_begin,
+                              "value_begin_sentence":0,
+                              "value_begin_sentence_start":_end,
+                              "value_end_sentence":0,
+                              "value_end_sentence_end":len(sentence)
+                              }
+                list_kv.append(_d)
+
+            else:
+                _begin = 0
+
+                for _i in range(len(list_span)-1):
+                    _end = list_span[_i+1][0]
+                    iter = re.search(kv_pattern,sentence[_begin:_end])
+                    _begin = list_span[_i][1]
+                    if iter is not None:
+                        _d = DotDict({})
+                        _d["key"] = iter.group("key")
+                        _d["value"] = iter.group("value")
+
+                        _d["position"] = {"key_begin_sentence":0,
+                                  "key_begin_sentence_start":iter.span("key")[0],
+                                  "key_end_sentence":0,
+                                  "key_end_sentence_end":iter.span("key")[0]+len(_d.get("key","")),
+                                  "value_begin_sentence":0,
+                                  "value_begin_sentence_start":iter.span("value")[0],
+                                  "value_end_sentence":0,
+                                  "value_end_sentence_end":iter.span("value")[0]+len(_d.get("value",""))
+                                  }
+                        list_kv.append(_d)
+
+                _begin = list_span[-2][1]
+                _end = len(sentence)
                 iter = re.search(kv_pattern,sentence[_begin:_end])
-                _begin = list_span[_i][1]
                 if iter is not None:
                     _d = DotDict({})
                     _d["key"] = iter.group("key")
                     _d["value"] = iter.group("value")
 
                     _d["position"] = {"key_begin_sentence":0,
-                              "key_begin_sentence_start":iter.span("key")[0],
-                              "key_end_sentence":0,
-                              "key_end_sentence_end":iter.span("key")[0]+len(_d.get("key","")),
-                              "value_begin_sentence":0,
-                              "value_begin_sentence_start":iter.span("value")[0],
-                              "value_end_sentence":0,
-                              "value_end_sentence_end":iter.span("value")[0]+len(_d.get("value",""))
-                              }
+                                  "key_begin_sentence_start":iter.span("key")[0],
+                                  "key_end_sentence":0,
+                                  "key_end_sentence_end":iter.span("key")[0]+len(_d.get("key","")),
+                                  "value_begin_sentence":0,
+                                  "value_begin_sentence_start":iter.span("value")[0],
+                                  "value_end_sentence":0,
+                                  "value_end_sentence_end":iter.span("value")[0]+len(_d.get("value",""))
+                                  }
                     list_kv.append(_d)
 
-            _begin = list_span[-2][1]
-            _end = len(sentence)
-            iter = re.search(kv_pattern,sentence[_begin:_end])
-            if iter is not None:
-                _d = DotDict({})
-                _d["key"] = iter.group("key")
-                _d["value"] = iter.group("value")
-
-                _d["position"] = {"key_begin_sentence":0,
-                              "key_begin_sentence_start":iter.span("key")[0],
-                              "key_end_sentence":0,
-                              "key_end_sentence_end":iter.span("key")[0]+len(_d.get("key","")),
-                              "value_begin_sentence":0,
-                              "value_begin_sentence_start":iter.span("value")[0],
-                              "value_end_sentence":0,
-                              "value_end_sentence_end":iter.span("value")[0]+len(_d.get("value",""))
-                              }
-                list_kv.append(_d)
-
 
 
 
@@ -497,10 +523,45 @@ def extract_kv_from_sentence(sentence):
 
 def extract_kv_from_node(node):
     list_kv = []
-    _text = node.get("text")
-    if _text:
-        list_kv = extract_kv_from_sentence(_text)
-    node["kv"] = list_kv
+    list_text = []
+    childs = node.get("children",[])
+    _text = ""
+
+    has_br = False
+    if childs:
+        for child in childs:
+            node_name = child.get("tag","")
+            child_text = child.get("text")
+            if node_name=="br":
+                list_text.append([])
+                has_br = True
+            if child_text:
+                if len(list_text)==0:
+                    list_text.append([])
+                list_text[-1].append(child)
+
+        node["kv"] = []
+        if has_br:
+            new_children = []
+            for texts in list_text:
+                if texts:
+                    _text = "".join([a.get("text") for a in texts])
+                    tag = texts[0]
+                    list_kv = extract_kv_from_sentence(_text)
+                    _n = DotDict({"tag":tag,"name":tag,"text":_text,"children":[],"kv":list_kv})
+                    new_children.append(_n)
+            node["children"] = new_children
+        else:
+            for texts in list_text:
+                _text = "".join([a.get("text") for a in texts])
+                if _text:
+                    list_kv = extract_kv_from_sentence(_text)
+                node["kv"].extend(list_kv)
+    else:
+        _text = node.get("text")
+        if _text:
+            list_kv = extract_kv_from_sentence(_text)
+        node["kv"] = list_kv
     return list_kv
 
 
@@ -522,25 +583,34 @@ def extract_kv_from_tree(tree):
     if isinstance(tree,dict):
         if tree.get("tag","")!="table":
             childs = tree.get("children",[])
+
             if len(childs)>0:
                 _count = 0
                 has_table = False
+                child_has_p_div = False
+                child_has_br = False
                 for child in childs:
                     _c,_t = extract_kv_from_tree(child)
                     _count += _c
                     if _t:
                         has_table = _t
+                    if child.get("tag","") in ("p","div"):
+                        child_has_p_div = True
+                    if child.get("tag","")=="br":
+                        child_has_br = True
                 if _count==0:
-                    _text = get_child_text(tree)
-                    if "children" in tree:
-                        del tree["children"]
-                    tree["text"] = _text
-                    list_kv = extract_kv_from_node(tree)
-                    _count = len(list_kv)
+                    if not has_table and not child_has_p_div and not child_has_br:
+                        _text = get_child_text(tree)
+                        if "children" in tree:
+                            del tree["children"]
+                        tree["text"] = _text
+                        list_kv = extract_kv_from_node(tree)
+                        _count = len(list_kv)
                     return _count,has_table
-                if tree.get("tag","")=="p" and not has_table:
-                    _text = get_child_text(tree)
-                    tree["text"] = _text
+                if tree.get("tag","") in ("p","div") and not has_table and not child_has_p_div:
+                    if not child_has_br:
+                        _text = get_child_text(tree)
+                        tree["text"] = _text
                     p_list_kv = extract_kv_from_node(tree)
                     if len(p_list_kv)>=_count:
                         if "children" in tree:
@@ -1485,7 +1555,7 @@ class Html2KVTree():
                         _child_text = ""
                         for _child in childs:
                             sentence_index_to = _child["sentence_index"]
-                            _child_text+=_child["text"]
+                            _child_text+=_child["text"]+"\n"
                         result_kv[_pi].append({"key":_text,"value":_child_text,"from_outline":True,"key_sentence_index_from":sentence_index_from,
                                           "key_sentence_index_to":sentence_index_from,"value_sentence_index_from":sentence_index_from,
                                           "value_sentence_index_to":sentence_index_to,})
@@ -1531,160 +1601,125 @@ if __name__ == '__main__':
     # HTML 文本
     html_content = """
 <div>
- <div>
-  <a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a>食堂账户开立项目(二次)竞争性磋商公告
- </div> 
- <div> 
+ <div>   
+  <div> 
+   <div> 
+    <span>项目名称:</span> 
+    <span><mark data-markjs="true">广东公司肇庆热力供热管网设计服务项目询价采购</mark></span> 
+   </div> 
+   <div> 
+    <span>采购机构:</span> 
+    <span><a target="_blank" class="markBlue" href="/bdqyhx/340219751287832576.html" style="color: #3083EB !important;text-decoration: underline;">国能物资南方有限公司</a></span> 
+   </div> 
+   <div> 
+    <span>采购编号:</span> 
+    <span>NFSB-FWXJ-2024110471</span> 
+   </div> 
+   <div> 
+    <span>采购人:</span> 
+    <span><a target="_blank" class="markBlue" href="/bdqyhx/213048615245266944.html" style="color: #3083EB !important;text-decoration: underline;">肇庆大旺电力热力有限公司</a></span> 
+   </div> 
+   <div> 
+    <span>报价人资格条件:</span> 
+    <span>报价人资质要求:报价人须同时满足以下资质证书 1. 工程设计资质证书-市政-市政行业资质乙级 或 工程设计资质证书-电力-电力行业资质乙级 2. 特种设备生产许可证-压力管道-公用管道GB2。报价人业绩要求:报价人须满足以下业绩 1. 报价人须提供近五年内(2019年1月1日至报价截止日期) 管道设计(长度大于3公里) 合同 至少 2 个, 报价人须提供符合本采购要求的业绩合同扫描件,必须包含采购范围、合同签订时间、甲乙方盖章页, 报价人须同时提供业绩合同对应的其他证明文件: 结算发票(开票时间2019-01-01至2024-11-30) ,未按上述要求提供的业绩证明文件为无效证明文件。</span> 
+   </div> 
+   <div> 
+    <span>采购方式:</span> 
+    <span> 询价采购</span> 
+   </div> 
+   <div> 
+    <span>询价方式:</span> 
+    <span> 公开询价</span> 
+   </div> 
+   <div> 
+    <span>物资分类:</span> 
+    <span> 火电设备-&gt;热控系统设备及配件;服务-&gt;其它;燃机设备-&gt;锅炉设备;火电设备-&gt;除灰设备及配件;服务-&gt;综合服务;火电设备-&gt;汽机辅机设备及配件;服务-&gt;勘察设计;火电设备-&gt;脱硫设备及配件;火电设备-&gt;锅炉主机设备及配件;燃机设备-&gt;燃气轮机设备及配件;</span> 
+   </div> 
+   <div> 
+    <span>主要技术要求:</span> 
+    <span> 本设计服务采购范围包括但不限于: 1.新增或改造供热管网开口项目编制建设项目可行性研究报告、设计方案、勘察设计、初步设计、施工图设计文件、非标准设备设计文件、施工图预算文件等服务。 2.报价人自行组织现场踏勘,采购人可提供供热管网母管参数、用汽用户需求参数等资料,报价人根据相关资料提供项目设计方案,内容应包含项目概况、热负荷计算、管网敷设方案、工程投资估算等。</span> 
+   </div> 
+  </div>  
+  <div> 
+   <div> 
+    <div> 
+     <span>发布人:</span> 
+     <span> 任灏洋</span> 
+    </div> 
+    <div> 
+     <span>报价方式:</span> 
+     <span>整单</span> 
+    </div> 
+   </div> 
+   <div> 
+    <div> 
+     <span>联系电话:</span>  
+    </div> 
+    <div> 
+     <span>发布时间:</span> 
+     <span>2024-11-29 16:43:56</span> 
+    </div> 
+   </div> 
+   <div> 
+    <div> 
+     <span>服务时间:</span> 
+     <span>合同签订后730天内 </span> 
+    </div> 
+    <div> 
+     <span>报价截止时间:</span> 
+     <span> 2024-12-04 09:00:00</span> 
+    </div> 
+   </div> 
+   <div> 
+    <div> 
+     <span>支付方式:</span> 
+     <span> 电汇</span> 
+    </div> 
+    <div> 
+     <span>运费承接:</span> 
+     <span> 供应方承担</span> 
+    </div> 
+   </div> 
+   <div> 
+    <div> 
+     <span>服务地点:</span> 
+     <span><a target="_blank" class="markBlue" href="/bdqyhx/213048615245266944.html" style="color: #3083EB !important;text-decoration: underline;">肇庆大旺电力热力有限公司</a>物资工厂</span> 
+    </div> 
+    <div> 
+     <span>异议联系人:</span> 
+     <span> 杨帆</span> 
+    </div> 
+   </div> 
+  </div>  
   <div> 
-   <blockquote> 
-    <p>项目概况</p> 
-    <p>辽宁机电职业技术学院食堂账户开立项目 采购项目的潜在供应商应在<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)获取采购文件,并于2024年11月26日 14点00分(北京时间)前提交响应文件。</p> 
-   </blockquote> 
-   <p><strong>一、项目基本情况</strong></p> 
-   <p>项目编号:LNSY-2024101702</p> 
-   <p>项目名称:<a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a>食堂账户开立项目</p> 
-   <p>采购方式:竞争性磋商</p> 
-   <p>预算金额:0.000000 万元(人民币)</p> 
-   <p>最高限价(如有):0.000000 万元(人民币)</p> 
-   <p>采购需求:</p> 
-   <p>本项目为丹东市<a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a>食堂账户开立项目采购项目,银行须提供给学校所需的包括日常资金结算服务、代收代付、转账汇款、账户对帐服务、年检服务、网银操作、安全保障等在内的一切配套基本服务。(具体详见第三章服务需求)</p> 
-   <p></p> 
-   <p>合同履行期限:5年 </p> 
-   <p>本项目(不接受 )联合体投标。</p> 
-   <p><strong>二、申请人的资格要求:</strong></p> 
-   <p>1.满足《中华人民共和国政府采购法》第二十二条规定;</p> 
-   <p>2.落实政府采购政策需满足的资格要求:</p> 
-   <p>无</p> 
-   <p></p> 
-   <p>3.本项目的特定资格要求:投标人应属于在中华人民共和国境内依法设立的国有商业银行、股份制商业银行、邮政储蓄银行、城市商业银行、农村商业银行、农村合作银行及政策性银行,并符合以下条件;(一)在甲方所在地设有分支机构;(二)在甲方所在地范围内依法开展经营活动,内部管理机制健全,具有较强的风险控制能力,近3年内在经营活动中无重大违法违规记录、未发生金融风险及重大违约事件。(三)投标人若为支行,须提供总行或丹东市分行针对本项目唯一授权书。各投标主体不得隶属于同一法人。不接受联合体投标。投标人若为总行或丹东市分行,须提供业务承办银行确认函(明确中标后承办本项目业务的银行名称)。(四)有专人负责办理相关业务。</p> 
-   <p><strong>三、获取采购文件</strong></p> 
-   <p>时间:2024年11月15日 至2024年11月25日,每天上午8:30至11:30,下午13:00至16:30。(北京时间,法定节假日除外)</p> 
-   <p>地点:<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</p> 
-   <p>方式:现场或电子邮件领取</p> 
-   <p>售价:¥500.0 元(人民币)</p> 
-   <p><strong>四、响应文件提交</strong></p> 
-   <p>截止时间:2024年11月26日 14点00分(北京时间)</p> 
-   <p>地点:<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</p> 
-   <p><strong>五、开启</strong></p> 
-   <p>时间:2024年11月26日 14点00分(北京时间)</p> 
-   <p>地点:<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</p> 
-   <p><strong>六、公告期限</strong></p> 
-   <p>自本公告发布之日起3个工作日。</p> 
-   <p><strong>七、其他补充事宜</strong></p> 
-   <p></p> 
-   <p>(一)质疑与投诉</p> 
-   <p>供应商认为自己的权益受到损害的,可以在知道或者应知其权益受到损害之日起七个工作日内,向采购代理机构或采购人提出质疑。</p> 
-   <p>1、接收质疑函方式:书面纸质或电子质疑函</p> 
-   <p>2、质疑函内容、格式:应符合《政府采购质疑和投诉办法》相关规定和财政部制定的《政府采购质疑函范本》格式,详见辽宁政府采购网。</p> 
-   <p>质疑供应商对采购人、采购代理机构的答复不满意,或者采购人、采购代理机构未在规定时间内作出答复的,可以在答复期满后15个工作日内向本级财政部门提起投诉。</p> 
-   <p>(二)购买采购文件时须提供以下材料(以下材料均须加盖单位公章):</p> 
-   <ol> 
-    <li value="NaN">法人或者其他组织的营业执照等主体证明文件或自然人的身份证明复印件(自然人身份证明仅限在自然人作为响应主体时使用);</li> 
-    <li value="NaN">法定代表人(或非法人组织负责人)身份证明书原件(附法定代表人身份证复印件)(自然人作为响应主体时不需提供);</li> 
-    <li value="NaN">授权委托书原件(附授权委托人身份证复印件)(法定代表人、非法人组织负责人、自然人本人购买采购文件的无需提供);</li> 
-   </ol> 
-   <p>注:电子邮件方式领取采购文件的供应商,将上述材料加盖公章的扫描件发送至指定邮箱(lnsy9688@163.com)并致电0415-2199688,主题写明“供应商名称、项目名称、联系人、联系电话”,在领取采购文件截止时间前资料审查通过后,代理机构将采购文件电子版发送至供应商邮箱。</p> 
-   <p></p> 
-   <p></p> 
-   <p><strong>八、凡对本次采购提出询问,请按以下方式联系。</strong></p> 
-   <p>1.采购人信息</p> 
-   <p>名 称:<a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a>     </p> 
-   <p>地址:丹东市振兴区洋河大街30号        </p> 
-   <p>联系方式:王老师0415-3853804      </p> 
-   <p>2.采购代理机构信息</p> 
-   <p>名 称:<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>            </p> 
-   <p>地 址:<a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)            </p> 
-   <p>联系方式:吴平0415-2199688            </p> 
-   <p>3.项目联系方式</p> 
-   <p>项目联系人:吴平</p> 
-   <p>电 话:  04152199688</p>  
-   <p></p> 
+   <div> 
+    <div> 
+     <div>
+       附件: 
+     </div> 
+     <div> 
+      <p> 有 </p> 
+     </div> 
+    </div> 
+    <div> 
+     <span>异议接收单位:</span> 
+     <span> <a target="_blank" class="markBlue" href="/bdqyhx/340219751287832576.html" style="color: #3083EB !important;text-decoration: underline;">国能物资南方有限公司</a></span> 
+    </div> 
+   </div> 
   </div> 
- </div> 
- <div> 
-  <div>
-   公告概要:
+  <div> 
+   <div> 
+    <div> 
+     <span>备注:</span>  
+    </div> 
+   </div> 
+  </div> 
+  <div> 
+   <div> 
+    <span>发布平台:</span> 
+    <span>国家能源e购(网址:www.neep.shop),报价人须在发布平台注册、经审核通过并缴纳供应商分类年费后才能参与具体项目报价。</span> 
+   </div> 
   </div> 
-  <table width="600"> 
-   <tbody> 
-    <tr> 
-     <td colspan="4"><b>公告信息:</b></td> 
-    </tr> 
-    <tr> 
-     <td width="128">采购项目名称</td> 
-     <td colspan="3" width="430"><a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a>食堂账户开立项目</td> 
-    </tr> 
-    <tr> 
-     <td>品目</td> 
-     <td colspan="3"><p>服务/金融服务/银行服务/其他银行服务</p></td> 
-    </tr> 
-    <tr> 
-     <td>采购单位</td> 
-     <td colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a></td> 
-    </tr> 
-    <tr> 
-     <td>行政区域</td> 
-     <td width="168">振兴区</td> 
-     <td width="128">公告时间</td> 
-     <td width="168">2024年11月14日 15:25</td> 
-    </tr> 
-    <tr> 
-     <td>获取采购文件时间</td> 
-     <td colspan="3">2024年11月15日至2024年11月25日<br>每日上午:8:30 至 11:30下午:13:00 至 16:30(北京时间,法定节假日除外)</td> 
-    </tr> 
-    <tr> 
-     <td>响应文件递交地点</td> 
-     <td colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</td> 
-    </tr> 
-    <tr> 
-     <td>响应文件开启时间</td> 
-     <td colspan="3">2024年11月26日 14:00</td> 
-    </tr> 
-    <tr> 
-     <td>响应文件开启地点</td> 
-     <td colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</td> 
-    </tr> 
-    <tr> 
-     <td>预算金额</td> 
-     <td colspan="3">¥0.000000万元(人民币)</td> 
-    </tr> 
-    <tr> 
-     <td colspan="4"><b>联系人及联系方式:</b></td> 
-    </tr> 
-    <tr> 
-     <td>项目联系人</td> 
-     <td colspan="3">吴平</td> 
-    </tr> 
-    <tr> 
-     <td>项目联系电话</td> 
-     <td colspan="3">04152199688</td> 
-    </tr> 
-    <tr> 
-     <td width="128">采购单位</td> 
-     <td width="430" colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/211521581770297344.html" style="color: #3083EB !important;text-decoration: underline;">辽宁机电职业技术学院</a></td> 
-    </tr> 
-    <tr> 
-     <td>采购单位地址</td> 
-     <td colspan="3">丹东市振兴区洋河大街30号</td> 
-    </tr> 
-    <tr> 
-     <td>采购单位联系方式</td> 
-     <td colspan="3">王老师0415-3853804</td> 
-    </tr> 
-    <tr> 
-     <td>代理机构名称</td> 
-     <td colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a></td> 
-    </tr> 
-    <tr> 
-     <td>代理机构地址</td> 
-     <td colspan="3"><a target="_blank" class="markBlue" href="/bdqyhx/215785544561414148.html" style="color: #3083EB !important;text-decoration: underline;">辽宁顺业工程咨询有限公司</a>(丹东市振兴区纤维南路1-2-7号)</td> 
-    </tr> 
-    <tr> 
-     <td>代理机构联系方式</td> 
-     <td colspan="3">吴平0415-2199688</td> 
-    </tr> 
-   </tbody> 
-  </table> 
  </div>
 </div>
     """
@@ -1694,7 +1729,7 @@ if __name__ == '__main__':
     _pd = Html2KVTree(html_content)
     _pd.print_tree(_pd.tree,"-|")
 
-    list_kv = _pd.extract_kv("获取采购文件时间")
+    list_kv = _pd.extract_kv("资格条件")
     print(list_kv)
 
     #获取预处理后的所有句子,该句子与kv值对应