張光照
(貴州財經(jīng)大學(xué)圖書館 貴州 貴陽 550025)
高校圖書館作為學(xué)校的信息資源中心和學(xué)術(shù)文化交流中心,是信息素質(zhì)教育的主導(dǎo)力量,在學(xué)術(shù)誠信建設(shè)和服務(wù)中理應(yīng)擔(dān)負起重要責(zé)任[1]。馮菲等[2]對世界一流大學(xué)圖書館科研誠信教育現(xiàn)狀進行調(diào)查發(fā)現(xiàn),世界一流大學(xué)圖書館科研誠信教育主要措施包括宣傳科研誠信制度政策、重視電子資源版權(quán)保護和宣傳出版?zhèn)惱硪?guī)范等方面。林靜等[3]針對國內(nèi)“雙一流”學(xué)校圖書館科研誠信教育調(diào)研發(fā)現(xiàn),目前已開展相關(guān)教育和服務(wù)的高校圖書館較少,其中可公開獲取開始科研誠信教育講座的高校只有武漢大學(xué)、復(fù)旦大學(xué)、北京大學(xué)、廈門大學(xué)等4所高校。魏來[4]認為高校教師科研失信的根本原因是師德的缺失,提出從加強高校教師的師德師風(fēng)建設(shè),規(guī)范高校師生行為,提高高校教師師德素質(zhì),提升教師的科研誠信力上根本上杜絕科研失信行為的出現(xiàn)。目前,通過相關(guān)科研誠信系統(tǒng)嚴格審查學(xué)??蒲谐晒歉咝?蒲姓\信服務(wù)的重要手段。
圖書館通過購買數(shù)據(jù)庫廠商的科研誠信服務(wù)系統(tǒng)對學(xué)校的師生科研成果進行科研誠信評價??蒲姓\信評價是教師職稱評定、崗位晉升的重要前提,每年職稱評定前期圖書館負責(zé)科研誠信服務(wù)的部門都任務(wù)繁重。本文分析CNKI科研誠信服務(wù)流程的現(xiàn)狀并指出當(dāng)前科研誠信服務(wù)存在的問題,提出基于“B2B+B2C”的服務(wù)模式,采用HTTP通信技術(shù)實現(xiàn)全過程自動化操作,將圖書館工作人員從簡單重復(fù)的工作中解脫出來,優(yōu)化了服務(wù)流程,提升了服務(wù)效率,提升了科研誠信的服務(wù)體驗與服務(wù)質(zhì)量。
CNKI科研·人事論文誠信檔案管理系統(tǒng)屬于B2B(Business to Business,機構(gòu)-機構(gòu))模式,通過給使用機構(gòu)開通一個B端賬號,機構(gòu)通過合法的賬號登錄訪問并使用其科研成果檢測服務(wù)。目前中國知網(wǎng)只對機構(gòu)開放賬戶,個人通過有賬戶的單位或者機構(gòu)代為檢測,高校師生通過圖書館使用該服務(wù),其操作流程涉及①用戶提交檢測申請、②圖書館審核申請、③登錄CNKI科研誠信服務(wù)系統(tǒng)、④上傳科研成果信息、⑤系統(tǒng)檢測、⑥生成報告、⑦下載報告、⑧反饋報告。
使用CNKI科研誠信服務(wù)需要執(zhí)行8個過程,機構(gòu)用戶(圖書館)需要執(zhí)行2、3、4、6、7、8的6個過程,僅“系統(tǒng)檢測”一個過程由系統(tǒng)自動執(zhí)行。當(dāng)前CNKI科研誠信服務(wù)存在流程多、周期長、服務(wù)體驗差、服務(wù)效率低下等問題。
獲得CNKI科研·人事論文誠信檔案管理系統(tǒng)合法賬戶的機構(gòu)(B端)建立一套自己的科研成果評價系統(tǒng),采用B2C(Business to Customer,機構(gòu)-客戶)模式,有科研誠信服務(wù)需求的個人(C端)通過B端的科研成果評價系統(tǒng)直接上傳科研成果與下載檢測報告。原來的B2B模式變?yōu)锽2B+B2C模式,工作壓力由機構(gòu)(B端)分解到有科研誠信服務(wù)需求的個人(C端)。新模式改變了原來由C端通過郵件發(fā)送至B端或由本人親自用U盤拷貝至B端,B端逐一提交科研成果信息到CNKI科研·人事論文誠信檔案管理系統(tǒng)進行檢測并下載報告反饋到C端的方式。新模式下,C端通過B端的科研成果評價系統(tǒng)直接提交科研成果信息,B端自動將C端提交的科研成果信息提交至CNKI科研·人事論文誠信檔案管理系統(tǒng),并定時向CNKI科研·人事論文誠信檔案管理系統(tǒng)查詢結(jié)果,自動生成報告并下載報告到B端的系統(tǒng)中,再由B端系統(tǒng)通過C端登記的郵箱推送至C端郵箱中,或者由C端登錄B端系統(tǒng)自助下載報告。
B端系統(tǒng)通過HTTP協(xié)議與CNKI科研·人事論文誠信檔案管理系統(tǒng)進行交互,HTTP協(xié)議的一個完整會話過程主要包括建立TCP連接、發(fā)送請求、接收應(yīng)答和關(guān)閉TCP連接4個步驟[5]。CNKI科研·人事論文誠信檔案管理系統(tǒng)HTTP請求認證方式為Session認證方式,每次進行HTTP請求時使用Cookie攜帶認證過的SessionId即可通過HTTP認證。認證成功后B端將已審核的科研成果通過HTTP請求傳送至CNKI科研·人事論文誠信檔案管理系統(tǒng),輪詢已檢測的報告,自動下載并將報告反饋給C端。實現(xiàn)原理見圖1。
CNKI科研·人事論文誠信檔案管理系統(tǒng)基于B/S(Browser/Server)架構(gòu),B/S架構(gòu)由Server端構(gòu)建一個HTTP服務(wù)器,監(jiān)聽一個TCP端口(HTTP默認80,HTTPS默認443),由Browser發(fā)起HTTP請求進行數(shù)據(jù)交互,HTTP請求常用方法有為get、post。Browser端發(fā)起HTTP請求獲取服務(wù),Server端處理Browser端發(fā)起的HTTP請求,并計算和存儲相應(yīng)的結(jié)果,將處理結(jié)果和數(shù)據(jù)通過模板引擎渲染生成HTML/CSS文件響應(yīng)到Browser端,Browser端再將HTML和CSS解析為可視化用戶界面,方便用戶操作。
本文使用C#構(gòu)建一個HTTP客戶端,用于代理CNKI科研·人事論文誠信檔案管理系統(tǒng)B/S架構(gòu)的Browser端,C端將科研成果信息提交至B端系統(tǒng),B端系統(tǒng)分析CNKI科研·人事論文誠信檔案管理系統(tǒng)對本次服務(wù)請求主機、路由、請求方式、請求數(shù)據(jù),B端系統(tǒng)根據(jù)C端上傳的資料構(gòu)造同樣的請求,發(fā)送至CNKI科研·人事論文誠信檔案管理系統(tǒng),獲取HTTP響應(yīng)。HTTP響應(yīng)分為響應(yīng)頭,正文,響應(yīng)頭中的content-type來標(biāo)注了響應(yīng)體是什么,本文主要關(guān)注text/html和application/octet-stream兩種響應(yīng)類型。HTML為超文本標(biāo)記語言,瀏覽器通過解析HTML構(gòu)建可視化界面,反饋給用戶的關(guān)鍵信息則使用HTML結(jié)構(gòu)包含在HTML的響應(yīng)中,將需要的數(shù)據(jù)通過正則表達式解析出來。正則表達式是一種文本模式,通過一定的規(guī)則對字符進行搜索、模式匹配,從HTML中匹配出有用的數(shù)據(jù),即可收集信息構(gòu)造HTTP請求。application/octetstream響應(yīng)類型為文件流,下載報告時通過文件流寫入B端系統(tǒng)磁盤。
使用HttpClient http = new HttpClient()創(chuàng)建一個HTTP客戶端,使HTTP客戶端擁有認證的權(quán)限,有兩種方式,一種方式是通過HTTP客戶發(fā)送登錄信息請求登錄地址。該方法的具體實現(xiàn)方式如下:使用Google Chrome瀏覽器打開CNKI科研·人事論文誠信檔案管理系統(tǒng)登錄頁面,右鍵檢查,打開網(wǎng)絡(luò),通過用戶名和密碼進行登錄,捕獲登錄請求的地址、請求類型和載荷發(fā)現(xiàn),登錄請求使用POST請求,載荷除了登錄用戶名密碼等信息之外還有一些附加信息,此附加信息來源于GET訪問登錄頁面的HTML中的隱藏控件中,使用string loginHtml =http.Get("http://check.cnki.net/scheck/")訪問登錄地址,在響應(yīng)的HTML中使用MatchCollection inputs =Regex.Matches(loginHtml, @"
將C端上傳至B端系統(tǒng)的科研成果文件自動推送至CNKI科研·人事論文誠信檔案管理系統(tǒng),B端管理員審核后的科研成果文件,B端系統(tǒng)通過科研成果作者在CNKI中進行查詢,根據(jù)查詢結(jié)果,對已被CNKI收錄的成果使用代碼片段1獲取人才查詢頁面中的隱藏控件,構(gòu)造人才查詢請求表單,根據(jù)查詢到的列表,與當(dāng)前查詢條件構(gòu)造檢測提交表單,循環(huán)將列表中的checkbox控件的value設(shè)置為on,與表1字段一起構(gòu)造表單數(shù)據(jù)post提交至地址/scheck/Person/PersonnelIntroduce.aspx,完成從人才查詢列表中自動轉(zhuǎn)入檢測;未被CNKI收錄的科研成果通過文件上傳的形式推送至CNKI科研·人事論文誠信檔案管理系統(tǒng)進行檢測,提取科研成果信息中的名稱、作者、發(fā)表日期等字段,構(gòu)造文件上傳請求所需要的數(shù)據(jù),以ContentType=multipart/form-data的方式發(fā)送請求,完成B端系統(tǒng)中待檢測的科研成果推送中國知網(wǎng)科研·人事論文誠信檔案管理系統(tǒng)。
科研成果檢測狀態(tài)通過請求檢測結(jié)果頁面/scheck/MonitorReport/RecSearch.aspx,獲取檢測結(jié)果頁響應(yīng),使用正則表達式Match table = Regex.Match(html,@"",RegexOptions.IgnoreCase | RegexOptions.Multiline);可以將列表匹配出來,使用正則表達式Match page= Regex.Match(html, @"");可以將分頁控件匹配出來,然后循環(huán)解析列表的內(nèi)容,將檢測狀態(tài)保存至B端系統(tǒng)中。
將檢測成功的科研成果構(gòu)造查詢表單POST請求/scheck/MonitorReport/RecSearch.aspx頁,從html中解析出select控件,將控件值全部設(shè)置為on,將ScriptManager1字段設(shè)置為UpdatePanel1|LinkButton1,再次請求/scheck/MonitorReport/RecSearch.aspx生成報告,通過請求http://reportdownload.cnki.net/vipdownload/{id}下載報告的文件流,報告下載后為rar加密壓縮文件,密碼為登錄賬號,使用命令行工具調(diào)用winrar命令對文件進行解壓縮,生成解壓命令cmd=string.Format("x-p{0}-o+{1}{2}-y-ibck",PassWord,rarPathName,UnPath);通過Process1.StartInfo.FileName = "Winrar.exe";啟動winrar程序,運行命令,得到解壓好的報告文件,將報告文件對應(yīng)存儲在B端系統(tǒng),供C端自行下載和自動郵件反饋。
科研成果檢測報告反饋可以C端自行登錄系統(tǒng)自助下載報告和根據(jù)C端在登記時提交的郵箱自動以附件的形式反饋至C端郵箱??蒲谐晒麢z測成功后自動進行報告下載,報告下載到本地解壓縮完成后使用.Net的MailMessage組件發(fā)送郵件,完成檢測報告反饋。
優(yōu)化后的操作流程只需要登錄B端系統(tǒng),審核需要檢測的科研成果即可,新的操作流程為①登錄系統(tǒng)、②審核申請。
B2B模式下,由于大部分操作需要人工執(zhí)行,服務(wù)時間代價約為3.5*n~6*n分鐘(n表示執(zhí)行檢測任務(wù)的次數(shù))。B2B+B2C模式下,系統(tǒng)自動完成大部分工作,服務(wù)時間壓縮到3.5 min以下,通過批量審核能在高峰期依然保持極低的工作時間處理完大量的檢測任務(wù)。同時,科研成果所有人無需到現(xiàn)場即可享受服務(wù),提高了服務(wù)效率,提升了服務(wù)體驗與服務(wù)質(zhì)量。
基于HTTP通信技術(shù)的B2B+B2C服務(wù)模式,有效地解決了B端工作壓力,但目前只接入了CNKI科研·人事論文誠信檔案管理系統(tǒng),未來將接入更多服務(wù)商的相關(guān)服務(wù)系統(tǒng),進一步提升系統(tǒng)服務(wù)效率,提高科研誠信服務(wù)水平。