网页阐明手艺
发布日期:2023-03-31浏览量:165
跟着信息手艺的疾速发展, 我国感染病防控事情也日趋依赖于信息手艺的先进性和高效性。2003年sars爆发后, 中国疾病预防控制中心研发了中国疾病预防控制信息零碎 (以下简称“中疾控零碎”) , 内含26个子零碎, 笼盖我国各级各种医疗卫朝气构和卫生行政部门, 旨在将感染病疫情发生情况实时从医疗机构泉源采集上报至各级疾病预防控制中心, 实现感染病防控疾速响应、精确决议计划、有用干涉的目的, 有用停止重大感染病疫情及群体性不明起因疾病的爆发[1]。但各级零碎用户只能作为运用者参加零碎的应用, 被动地熟悉和把握零碎现有的功用, 未能得到任何个性化定做权限, 没法使相干功用愈加符合理论事情需求。
今朝, 零碎的省级管理员通晓突发公共卫闹事宜发生情况的体式格局有以下2种:经由过程查询“中疾控零碎”中的突发公共卫闹事宜信息管理零碎 (以下简称“突发零碎”) ;经由过程下级疾控机构疫情管理员电话或者短信上报。疫情接报的时间直接影响疾控部门对事宜干涉和处置的进度。因而, 人为按时存眷零碎中突发事宜陈述与实时监控比拟, 当时效性能够存在较大差异。为此, 设计开发一套突发公共卫闹事宜管理辅佐软件, 实现计较机替代人工进行实时在线自动监控和采集“突发零碎”中事宜的根本信息并实时揭示, 可促成感染病疫情日常监控管理事情的信息化和智能化, 有用普及疫情陈述信息处置效力。
1 主要做法及程序设计思绪
“突发零碎”是b/s架构的web应用零碎, 各级疾病预防控制中心的营业管理员按照差别的权限可以查询到所属辖区内陈述的突发公共卫闹事宜的汇总及个案明细信息。思索不依托“中疾控零碎”开发商提供数据或服务接口的条件, 采用microsoft.net平台下的webbrowser阅读器控件, 开发一个可以实现对零碎中相干数据页面进行自动监控和数据采集的应用程序软件, 改善了基于b/s架构的web应用程序在用户端“弱控制”的缺乏。基于信息安全和部署便捷性的需求, 本软件采用c/s架构, 运用microsoft.net平台下的c#言语编写开发, 集成webbrowser、office api、短信平台等多种成熟手艺, 实现对“突发零碎”关键页面的数据抓取和应用。
1.1 设计思绪
本软件经由过程webbrowser阅读器控件对“突发零碎”的页面进行操纵和控制, 行使按时器配置按时每隔60秒摹拟触发页面上的查询按钮[2], 以实现对事宜管理页面数据的自动刷新, 同时制止因恒久无操纵招致零碎认证超时。当页面加载执行完毕后, 按照软件程序中默许的文档清算算法, 剖析html网页格局文档, 对当前页面上一切的突发事宜根本信息进行抓取, 而后以突发事宜名称和事宜id两个字段作为联结主键, 逐条与当地数据库中的已有记载进行比对, 判断是否属于新发的突发事宜。同时启动巡检函数, 查询到数据库中的信息揭示字段标注为未揭示的突发事宜, 则对用户进路程序弹窗或者短信揭示。如未发现新事宜, 软件则自动执行轮回执行以上操纵直至发现新事宜, 以此来实现不中断的在线监控。末了, 经由过程挪用office api, 抽取突发事宜的关键字段信息对预先植入word陈述模板的书签进行婚配更新, 即可自动、疾速地生成陈述格局文档。
1.2 可行性阐明
经由过程对页面源文件的阐明, 发现突发公共卫闹事宜列表页面文档为标准化的html文档格局, 需求监控和采集数据的页面由查询条件区域和数据显示区域构成, 具有页面阐明和数据采集行使的能够性。经由过程对页面元素进行阐明, 发现需求获取的信息元素均集中在数据显示区域事宜列表的table元素中, 包罗有:突发公共卫闹事宜级别、事宜名称、陈述地域、状况、创立时间、比来修改、病发数、殒命数、审核状况等字段。上述一切字段信息均存在页面中每回个<tr></tr>记载行标签内, 每回个关键字段占用一个<td></td>单位格, 需求抓取的关键信息字段均以文本和占位符形式存储在单位格内部[3]。
2 主要功用和效果
按照上述设计思绪, 软件开发过程当中主要实现了单点登陆、页面自动刷新、页面数据抓取、陈述自动生成四个方面的功用, 主要手艺要点和实现体式格局详细枚举以下:
2.1 单点登陆
“中疾控零碎”登陆流派现已履行数字证书认证登陆, 插入证书介质后只需求在页面上输入证书口令即可实现登陆。在完成页面加载后, 在程序中进行轮回查找, 定位到id或者name属性值为“userpwd”的input标签[4], 而后将用户的数字证书口令进行赋值, 并在程序内部经由过程webbrowser对页面进行控制, 挪用页面表单提交函数, 完成对“登陆”按钮提交事宜函数的摹拟人工触发, 经由过程暗码验证后即可登陆零碎。
2.2 自动刷新查询
突发公共卫闹事宜查询页面上配置有“查询”按钮, 用于查询陈述的突发事宜信息。按照自动查询的需求, 需运用程序摹拟人工触发该按钮。页面中该按钮运用的是input标签, value属性值为“查询”, onclick事宜挪用js查询函数。行使该元素的独一属性值挑选过滤掉其余标签元素, 再逐层嵌套轮回查找, 行使getattribute (“value”) 属性在页面中唯必然位该按钮元素, 而后在程序内部挪用单击查询函数, 完成对“查询”按钮的摹拟人工触发。完成操纵后会显示相合时间段内的一切突发公共卫闹事宜列表。
2.3 页面元素抓取
突发公共卫闹事宜关键根本信息全部集中存储于页面中的table标签内部, 因页面中存在多个table标签, 可以唯必然位到方针是class属性值为“tbmain”的table标签, 而后挨次轮回查询class属性值为“tbmain_data”的tr行标签, 截取行标签内部一切单位格td的内容, 末了行使正则表达式或者其余预设好的文档荡涤算法对内容进行挑拔取值, 直至读取到当前table完毕标签后完成一切事宜信息的采集。
2.4 自动填写生成事宜陈述
突发公共卫闹事宜陈述需由营业职员按照事宜关键信息填写生成word文档并打印审批, 经由过程在突发事宜陈述模板中对需求赋值的位置插入对应信息的书签标识, 让程序运用office api的相干要领, 找到模板中的书署名, 并在书签处写入要插入的数据, 操纵完成后即可在指定操纵零碎途径下自动生成以事宜名称定名的word文档。
3 接头
该辅佐软件经疫情管理职员在理论事情中测试和运用, 极大地减轻了零碎营业管理员的事情量。如:改良了人为监控形式存在的弊病, 实现了实时数据采集和阐明、自动预警新发事宜, 有用地减缓值班事恋职员压力;可疾速、精确地生成突发公共卫闹事宜陈述, 既能削减人为手工操纵发生的毛病, 又能极大地普及事情效力。该软件尽管实现了对“突发零碎”进行自动监控和数据采集的目的, 但依赖于对页面html格局标签文本的辨认和抓取, 如零碎开发商因营业事情需求对相干页面进行了变动, 那末软件也要做响应的调整, 才气包管信息获取精确。
基于webbrowser的突发公共卫闹事宜信息管理零碎自动监控和告警应用软件开发, 经由过程量种成熟信息手艺的整合行使, 有用改良了事情景式, 普及了事情效力。据统计, 现有省、市、县级疾病预防控制中心120余家, 各地疾病预防控制机构营业事恋职员均有雷同的事情需求。该软件针对性强、操纵简略, 具有大范畴推广运用的需乞降能够性。同时, 这类基于网页数据采集的软件设计思绪为公共卫生和医疗行业各种大型网络信息零碎数据采集和二次开发应用提供了依据。
相关文章: