陳云暉
摘 ?要:該文為了實(shí)現(xiàn)對(duì)互聯(lián)網(wǎng)信息的有效監(jiān)管,在系統(tǒng)信息采集環(huán)節(jié),力求實(shí)現(xiàn)網(wǎng)站身份的自動(dòng)化認(rèn)證,和采集動(dòng)態(tài)化網(wǎng)頁信息。提出基于JSSh該腳本交互接口,能夠成功實(shí)現(xiàn)JSSh客戶端通信JSSh服務(wù)器,經(jīng)客戶端向服務(wù)器發(fā)送指令,進(jìn)而對(duì)Firefox瀏覽器操控即可填寫身份認(rèn)證單,在進(jìn)行Cookie認(rèn)證交互處理后便完成了身份自動(dòng)化認(rèn)證過程。通過運(yùn)用Firefox網(wǎng)頁排版引擎Gecko對(duì)網(wǎng)頁動(dòng)態(tài)腳本進(jìn)行解析,客戶端能夠根據(jù)HTML DOM完成動(dòng)態(tài)化網(wǎng)頁內(nèi)容及鏈接地址的獲取,也就完成了基于JSSh信息采集的全過程。
關(guān)鍵詞:JSSh ?信息采集 ?校本服務(wù)器 ?解析技術(shù)
中圖分類號(hào):TP274.2 ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A ? ? ? ? ? ? ? ? ? ?文章編號(hào):1672-3791(2020)11(b)-0057-03
Abstract: In order to realize the effective supervision of Internet information, this paper strives to realize the automatic authentication of website identity and the collection of dynamic webpage information in the system information collection link. The script interaction interface based on JSSH is proposed, which can successfully realize the communication between JSSH client and JSSH server. The client sends instructions to the server, and then controls the Firefox browser to fill in the identity authentication form. After the interactive processing of Cookie authentication, the automatic identity authentication process is completed. Through the analysis of the dynamic script of the web page by using the Firefox web page typesetting engine gecko, the client can complete the dynamic web page content and link address acquisition according to HTML DOM, which also completes the whole process of information collection based on jssh.
Key Words: JSSh; Information collection; School based server; Parsing technology
隨著社會(huì)發(fā)展各項(xiàng)新興技術(shù)得以不斷創(chuàng)新研發(fā),互聯(lián)網(wǎng)作為新興媒體為人們發(fā)布信息提供了有力途徑,但也增加了信息采集工作的難度。就目前我國的信息安全現(xiàn)狀來講,通過基于Web自動(dòng)化功能測(cè)試,能夠通過對(duì)信息自動(dòng)化采集技術(shù)研究,豐富我國現(xiàn)有技術(shù)研究成果。并且運(yùn)用成熟的Web瀏覽器網(wǎng)頁排版引擎,能夠進(jìn)行授權(quán)網(wǎng)站的自動(dòng)化登錄解析動(dòng)態(tài)網(wǎng)頁。提出JSSh客戶端、服務(wù)器,能夠成功地完成Firefox瀏覽器功能操控,與目前飛速發(fā)展的互聯(lián)網(wǎng)內(nèi)容生成方式相適應(yīng)。
1 ?JSSh技術(shù)概述
JSSh作為Fire Fox C++模塊,能夠作為Fire Fox成功安裝附加組件。作為JSSh客戶端、服務(wù)器之間的交互過程。外部應(yīng)用程序能夠建立和JSSh服務(wù)器之間的Java校本鏈接,服務(wù)器負(fù)責(zé)對(duì)客戶端的Java指令執(zhí)行,并將最終的執(zhí)行結(jié)果反饋給JSSh客戶端??蛻舳思纯筛鶕?jù)Java通用對(duì)象HTML DOM支持的相應(yīng)方法,實(shí)現(xiàn)對(duì)瀏覽器文檔對(duì)象的操控。
對(duì)于附加組件內(nèi)完成Firefox的XPCOM組件安裝,通過運(yùn)用Gecko SDK,能夠運(yùn)用Java Script或C++完成組件創(chuàng)建。JSSh主要包括了服務(wù)器、客戶端兩大組成,Gecko的提供接口也正是JSSh服務(wù)器,實(shí)現(xiàn)Firefox瀏覽器功能操控。JSSh客戶端Fire Watir在Web應(yīng)用程序自動(dòng)化功能測(cè)試中廣泛運(yùn)用,通過基于Ruby編寫,實(shí)現(xiàn)了JSSh服務(wù)器多功能的封裝處理,應(yīng)用程序能夠?qū)ire Fox方便自由操控加載DOM對(duì)象。測(cè)試者通過利用其完成程序編寫,即可實(shí)現(xiàn)對(duì)Web應(yīng)用程序的易讀、易維護(hù)自動(dòng)化功能腳本測(cè)試。
2 ?基于JSSh網(wǎng)絡(luò)自動(dòng)身份認(rèn)證
2.1 填寫身份認(rèn)證表單
HTML表單主要包括的元素有radio、combobox、checkbox、text field、hidden field等不同類型表單元素,向Web服務(wù)器發(fā)送數(shù)據(jù),可以經(jīng)適當(dāng)編碼實(shí)現(xiàn)有序表示,運(yùn)用以下公式對(duì)表單進(jìn)行簡(jiǎn)化處理。
F=(U,(E1,V1),(E2,V2),…,(Em,Vm))
Firebug作為Firefox瀏覽器的附加組件,能夠?qū)崿F(xiàn)Web頁面的編輯、調(diào)試、跟蹤,并在短時(shí)間內(nèi)實(shí)現(xiàn)認(rèn)證表單HTML代碼的快速查找。經(jīng)Firefox完成身份認(rèn)證表單網(wǎng)頁加載成功后,即可點(diǎn)擊鼠標(biāo)置于網(wǎng)頁認(rèn)證單中,這種情況下的HTML源代碼便會(huì)顯示于Firebug控制窗口內(nèi),方便對(duì)身份認(rèn)證表單元素的及時(shí)識(shí)別。
JSSh服務(wù)器根據(jù)操作指示完成Firefox身份認(rèn)證網(wǎng)頁加載后,以(how,what)此種語法形式,完成含有認(rèn)證信息的Java指令向服務(wù)器發(fā)送。對(duì)比編程重構(gòu)認(rèn)證Cookie網(wǎng)絡(luò)交互制,經(jīng)JSSh客戶端完成Java指令發(fā)送,可以內(nèi)嵌于Firefox瀏覽器內(nèi),自動(dòng)填寫身份認(rèn)證單。僅需Firefox瀏覽器的附加組件,便可實(shí)現(xiàn)Firebug認(rèn)證表單元素查找,成功構(gòu)建自動(dòng)化填寫身份認(rèn)證表單的Java指令。
2.2 身份認(rèn)證及信息請(qǐng)求交互
完成上述步驟后,JSSh客戶端負(fù)責(zé)對(duì)Java指令的操作執(zhí)行,經(jīng)Firefox瀏覽器提交至Web網(wǎng)站的自動(dòng)化填寫身份認(rèn)證表單,JSSh客戶端已經(jīng)不再參與瀏覽器及網(wǎng)站的協(xié)商認(rèn)證過程。完成Web及瀏覽器之間的身份認(rèn)證后,JSSh客戶端向服務(wù)器的內(nèi)嵌Firefox瀏覽器完成身份認(rèn)證網(wǎng)站指示發(fā)布相關(guān)信息,進(jìn)而轉(zhuǎn)至身份認(rèn)證網(wǎng)站所進(jìn)行的信息發(fā)布交互環(huán)節(jié)中。
2.3 JSSh采集網(wǎng)站發(fā)布內(nèi)容
完成以上身份認(rèn)證步驟后,經(jīng)JSSh客戶端能夠繼續(xù)發(fā)送至Firefox瀏覽器,相應(yīng)的身份認(rèn)證網(wǎng)站Java加載指令,并進(jìn)行相應(yīng)的信息采集操作。瀏覽器實(shí)現(xiàn)對(duì)發(fā)布的網(wǎng)頁指令執(zhí)行加載,并向身份認(rèn)證網(wǎng)站中實(shí)現(xiàn)身份發(fā)布頁面的自動(dòng)認(rèn)證。JSSh客戶端對(duì)于瀏覽器網(wǎng)頁加載DOM樹內(nèi),可以完成網(wǎng)頁身份信息的超文本鏈接提取,經(jīng)過瀏覽并最終導(dǎo)出至對(duì)應(yīng)連接的文本信息,即可成功完成身份認(rèn)證信息采集工作過程。
2.4 運(yùn)用網(wǎng)頁獲取工具采集內(nèi)容
在完成自動(dòng)化身份認(rèn)證后,通過向文件導(dǎo)出網(wǎng)站Cookie信息,并在Wget、Pacuk等下載程序執(zhí)行HTTP協(xié)議文件,最終導(dǎo)入Cookie文件內(nèi),這樣可以有效提升下載效率。譬如Wget能夠完成對(duì)用戶提供文件的Cookie信息讀取,并在交互Web服務(wù)器中在HTTP頭部附加Gookie信息,保持建立用戶會(huì)話狀態(tài)并獲取相應(yīng)內(nèi)容。
3 ?基于JSSh動(dòng)態(tài)網(wǎng)頁采集
3.1 動(dòng)態(tài)網(wǎng)頁解析技術(shù)
針對(duì)動(dòng)態(tài)網(wǎng)頁目前推出Java引擎技術(shù),來完成對(duì)動(dòng)態(tài)網(wǎng)頁Jave腳本的解釋,并獲取超文本鏈接地址及相應(yīng)內(nèi)容。以Spider Monkey技術(shù)為例運(yùn)用中,能夠?qū)崿F(xiàn)對(duì)基本Java分析器的基本功能,可以經(jīng)過編譯并執(zhí)行Java腳本語句函數(shù),能夠分配腳本變量所需的存儲(chǔ)空間,在不需要變量情況下回收原本占用存儲(chǔ)空間。在運(yùn)行Spider Monkey技術(shù)時(shí)的運(yùn)行環(huán)境,作為對(duì)腳本變量、對(duì)象及上下文執(zhí)行所需的存儲(chǔ)空間,作為運(yùn)行Java時(shí)的環(huán)境和上下文執(zhí)行關(guān)系。
3.2 構(gòu)建動(dòng)態(tài)網(wǎng)頁DOM
在用戶請(qǐng)求網(wǎng)頁加載時(shí),瀏覽器根據(jù)網(wǎng)絡(luò)模塊完成相關(guān)數(shù)據(jù)獲取,并向排版引擎轉(zhuǎn)發(fā)接收數(shù)據(jù),實(shí)現(xiàn)單獨(dú)線程運(yùn)行。對(duì)于排版引擎載入HTML文檔中,可以生成DOM樹,且兼容于CSS2規(guī)范的瀏覽器還可以完成渲染樹、Frame樹的創(chuàng)建,成功創(chuàng)建后便可以在屏幕中顯示reflow過程。此時(shí)在網(wǎng)頁內(nèi)嵌入的Java腳本代碼,便會(huì)對(duì)排版引擎產(chǎn)生影響,整個(gè)HTML文檔便可以根據(jù)文檔對(duì)象,對(duì)網(wǎng)頁元素進(jìn)行相應(yīng)的訪問改變,譬如實(shí)現(xiàn)對(duì)樣本屬性的更改,并完成事件監(jiān)聽器的增設(shè)等。
3.3 在DOM內(nèi)完成內(nèi)容采集
所示在成功建立Web瀏覽器的DOM后,便可以根據(jù)DOM的本身提供方法,完成HTML元素訪問采集,并完成Java指令發(fā)送對(duì)文檔元素屬性進(jìn)行查詢,并運(yùn)行獲取網(wǎng)頁發(fā)布HTML源文件及文本信息。
4 ?結(jié)語
如上在本文提出基于JSSh的信息采集技術(shù),分析了JSSh服務(wù)器、客戶端交互制,通過完成身份認(rèn)證表單填寫,并協(xié)商Web網(wǎng)站身份認(rèn)證,進(jìn)而采用動(dòng)態(tài)網(wǎng)頁解析技術(shù),構(gòu)建動(dòng)態(tài)網(wǎng)頁DOM最終完成JSSh網(wǎng)站發(fā)布信息采集,該技術(shù)也會(huì)在未來身份認(rèn)證信息采集相關(guān)領(lǐng)域有較好的應(yīng)用前景。
參考文獻(xiàn)
[1] 李曼尋.“互聯(lián)網(wǎng)+”時(shí)代檔案價(jià)值與檔案利用的關(guān)系研究[D].安徽大學(xué),2020.
[2] 周靜.“BIM+VR”技術(shù)在建筑設(shè)備運(yùn)維管理中的應(yīng)用研究[D].長(zhǎng)春工程學(xué)院,2020.
[3] 程元澤.基于大數(shù)據(jù)分析的蘇州高鐵新城公共空間活力評(píng)價(jià)研究[D].蘇州科技大學(xué),2019.
[4] 梁學(xué)書.基于警務(wù)平臺(tái)的視頻監(jiān)控基礎(chǔ)信息采集與管理技術(shù)研究及實(shí)現(xiàn)[J].警察技術(shù),2017(2):67-70.
[5] 陳云坪,孫源,楊玥,李皓昱,馬存詩,侯磊,陳彥.葉面積指數(shù)在線監(jiān)測(cè)實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索,2019,38(11):51-55.
[6] 劉興奇.故障預(yù)測(cè)與健康管理技術(shù)在用電信息采集系統(tǒng)中的應(yīng)用與展望[J].電器與能效管理技術(shù),2018(2):73-77+82.