隨著信息技術的快速發(fā)展, 我國傳染病防控工作也日益依賴于信息技術的先進性和高效性。2003年SARS暴發(fā)后, 中國疾病預防控制中心研發(fā)了中國疾病預防控制信息系統 (以下簡稱“中疾控系統”) , 內含26個子系統, 覆蓋我國各級各類醫(yī)療衛(wèi)生機構和衛(wèi)生行政部門, 旨在將傳染病疫情發(fā)生情況及時從醫(yī)療機構源頭采集上報至各級疾病預防控制中心, 實現傳染病防控快速響應、準確決策、有效干預的目的, 有效遏制重大傳染病疫情及群體性不明原因疾病的暴發(fā)[1]。但各級系統用戶只能作為使用者參與系統的應用, 被動地熟悉和掌握系統現有的功能, 未能獲得任何個性化定制權限, 無法使相關功能更加契合實際工作需要。
目前, 系統的省級管理員知曉突發(fā)公共衛(wèi)生事件發(fā)生情況的方式有以下2種:通過查詢“中疾控系統”中的突發(fā)公共衛(wèi)生事件信息管理系統 (以下簡稱“突發(fā)系統”) ;通過下級疾控機構疫情管理員電話或者短信上報。疫情接報的時間直接影響疾控部門對事件干預和處理的進度。因此, 人為定時關注系統中突發(fā)事件報告與實時監(jiān)控相比, 其時效性可能存在較大差距。為此, 設計開發(fā)一套突發(fā)公共衛(wèi)生事件管理輔助軟件, 實現計算機代替人工進行實時在線自動監(jiān)控和采集“突發(fā)系統”中事件的基本信息并及時提醒, 可促進傳染病疫情日常監(jiān)控管理工作的信息化和智能化, 有效提高疫情報告信息處置效率。
1 主要做法及程序設計思路
“突發(fā)系統”是B/S架構的Web應用系統, 各級疾病預防控制中心的業(yè)務管理員根據不同的權限可以查詢到所屬轄區(qū)內報告的突發(fā)公共衛(wèi)生事件的匯總及個案明細信息??紤]不依托“中疾控系統”開發(fā)商提供數據或服務接口的前提, 采用MicroSoft.Net平臺下的WebBrowser瀏覽器控件, 開發(fā)一個可以實現對系統中相關數據頁面進行自動監(jiān)控和數據采集的應用程序軟件, 改善了基于B/S架構的Web應用程序在用戶端“弱控制”的不足?;谛畔踩筒渴鸨憷缘男枨? 本軟件采用C/S架構, 使用MicroSoft.Net平臺下的C#語言編寫開發(fā), 集成WebBrowser、Office API、短信平臺等多種成熟技術, 實現對“突發(fā)系統”關鍵頁面的數據抓取和應用。
1.1 設計思路
本軟件通過WebBrowser瀏覽器控件對“突發(fā)系統”的頁面進行操作和控制, 利用定時器設置定時每隔60秒模擬觸發(fā)頁面上的查詢按鈕[2], 以實現對事件管理頁面數據的自動刷新, 同時避免因長期無操作導致系統認證超時。當頁面加載執(zhí)行完畢后, 根據軟件程序中默認的文檔清理算法, 解析HTML網頁格式文檔, 對當前頁面上所有的突發(fā)事件基本信息進行抓取, 然后以突發(fā)事件名稱和事件ID兩個字段作為聯合主鍵, 逐條與本地數據庫中的已有記錄進行比對, 判斷是否屬于新發(fā)的突發(fā)事件。同時啟動巡檢函數, 查詢到數據庫中的信息提醒字段標注為未提醒的突發(fā)事件, 則對用戶進行程序彈窗或者短信提醒。如未發(fā)現新事件, 軟件則自動執(zhí)行循環(huán)執(zhí)行以上操作直至發(fā)現新事件, 以此來實現不間斷的在線監(jiān)控。最后, 通過調用Office API, 抽取突發(fā)事件的關鍵字段信息對預先植入WORD報告模板的書簽進行匹配更新, 即可自動、快速地生成報告格式文檔。
1.2 可行性分析
通過對頁面源文件的分析, 發(fā)現突發(fā)公共衛(wèi)生事件列表頁面文檔為標準化的HTML文檔格式, 需要監(jiān)控和采集數據的頁面由查詢條件區(qū)域和數據顯示區(qū)域組成, 具備頁面分析和數據采集利用的可能性。通過對頁面元素進行分析, 發(fā)現需要獲取的信息元素均集中在數據顯示區(qū)域事件列表的TABLE元素中, 包含有:突發(fā)公共衛(wèi)生事件級別、事件名稱、報告地區(qū)、狀態(tài)、創(chuàng)建時間、最近修改、發(fā)病數、死亡數、審核狀態(tài)等字段。上述所有字段信息均存在頁面中每一個<tr></tr>記錄行標簽內, 每一個關鍵字段占用一個<td></td>單元格, 需要抓取的關鍵信息字段均以文本和占位符形式存儲在單元格內部[3]。
2 主要功能和成效
根據上述設計思路, 軟件開發(fā)過程中主要實現了單點登錄、頁面自動刷新、頁面數據抓取、報告自動生成四個方面的功能, 主要技術要點和實現方式具體列舉如下:
2.1 單點登錄
“中疾控系統”登錄門戶現已實行數字證書認證登錄, 插入證書介質后只需要在頁面上輸入證書口令即可實現登錄。在完成頁面加載后, 在程序中進行循環(huán)查找, 定位到ID或者NAME屬性值為“UserPwd”的INPUT標簽[4], 然后將用戶的數字證書口令進行賦值, 并在程序內部通過WebBrowser對頁面進行控制, 調用頁面表單提交函數, 完成對“登錄”按鈕提交事件函數的模擬人工觸發(fā), 通過密碼驗證后即可登錄系統。
2.2 自動刷新查詢
突發(fā)公共衛(wèi)生事件查詢頁面上設置有“查詢”按鈕, 用于查詢報告的突發(fā)事件信息。根據自動查詢的需求, 需使用程序模擬人工觸發(fā)該按鈕。頁面中該按鈕使用的是INPUT標簽, VALUE屬性值為“查詢”, onclick事件調用JS查詢函數。利用該元素的唯一屬性值篩選過濾掉其他標簽元素, 再逐層嵌套循環(huán)查找, 利用GetAttribute (“value”) 屬性在頁面中唯一定位該按鈕元素, 然后在程序內部調用單擊查詢函數, 完成對“查詢”按鈕的模擬人工觸發(fā)。完成操作后會顯示相應時間段內的所有突發(fā)公共衛(wèi)生事件列表。
2.3 頁面元素抓取
突發(fā)公共衛(wèi)生事件關鍵基本信息全部集中存儲于頁面中的TABLE標簽內部, 因頁面中存在多個TABLE標簽, 可以唯一定位到目標是CLASS屬性值為“tbMain”的TABLE標簽, 然后依次循環(huán)查詢CLASS屬性值為“tbMain_data”的TR行標簽, 截取行標簽內部所有單元格TD的內容, 最后利用正則表達式或者其他預設好的文檔清洗算法對內容進行篩選取值, 直至讀取到當前TABLE結束標簽后完成所有事件信息的采集。
2.4 自動填寫生成事件報告
突發(fā)公共衛(wèi)生事件報告需由業(yè)務人員根據事件關鍵信息填寫生成WORD文檔并打印審批, 通過在突發(fā)事件報告模板中對需要賦值的位置插入對應信息的書簽標識, 讓程序使用Office API的相關方法, 找到模板中的書簽名, 并在書簽處寫入要插入的數據, 操作完成后便可在指定操作系統路徑下自動生成以事件名稱命名的WORD文檔。
3 討論
該輔助軟件經廣西疫情管理人員在實際工作中測試和使用, 極大地減輕了系統業(yè)務管理員的工作量。如:改進了人為監(jiān)控模式存在的弊端, 實現了實時數據采集和分析、自動預警新發(fā)事件, 有效地緩解值班工作人員壓力;可快速、準確地生成突發(fā)公共衛(wèi)生事件報告, 既能減少人為手工操作產生的錯誤, 又能極大地提高工作效率。該軟件雖然實現了對“突發(fā)系統”進行自動監(jiān)控和數據采集的目的, 但依賴于對頁面HTML格式標簽文本的識別和抓取, 如系統開發(fā)商因業(yè)務工作需要對相關頁面進行了變更, 那么軟件也要做相應的調整, 才能保證信息獲取準確。
基于WebBrowser的突發(fā)公共衛(wèi)生事件信息管理系統自動監(jiān)控和告警應用軟件開發(fā), 通過多種成熟信息技術的整合利用, 有效改進了工作模式, 提高了工作效率。據統計, 廣西現有省、市、縣級疾病預防控制中心120余家, 各地疾病預防控制機構業(yè)務工作人員均有類似的工作需求。該軟件針對性強、操作簡單, 具備大范圍推廣使用的需求和可能性。同時, 這種基于網頁數據采集的軟件設計思路為公共衛(wèi)生和醫(yī)療行業(yè)各類大型網絡信息系統數據采集和二次開發(fā)應用提供了依據。
當前文章:新聞動態(tài)網頁分析技術
網站鏈接:http://muchs.cn/news4/145104.html
成都網站建設公司_創(chuàng)新互聯,為您提供建站公司、響應式網站、虛擬主機、品牌網站設計、做網站、外貿網站建設
廣告
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯