• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于知網(wǎng)的論文按需檢索系統(tǒng)

      2012-04-29 00:44:03蔣莘
      電腦知識(shí)與技術(shù) 2012年2期
      關(guān)鍵詞:知網(wǎng)數(shù)字圖書館

      蔣莘

      摘要:數(shù)字圖書館是Web數(shù)據(jù)庫(kù)的典型應(yīng)用領(lǐng)域之一。為了幫助用戶高效地訪問(wèn)數(shù)字圖書館中的海量資源,該文提出一種按需論文檢索系統(tǒng),通過(guò)本地搜索和在線搜索的有效結(jié)合,可以批量處理用戶的查詢請(qǐng)求,進(jìn)行快速響應(yīng)。在詳細(xì)介紹系統(tǒng)框架和實(shí)現(xiàn)原理的基礎(chǔ)上,該文對(duì)基于知網(wǎng)的原型系統(tǒng)實(shí)現(xiàn)過(guò)程進(jìn)行了詳細(xì)闡述。

      關(guān)鍵詞:Web數(shù)據(jù)庫(kù);數(shù)字圖書館;按需檢索;知網(wǎng)

      中圖分類號(hào)TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)02-0340-05

      CNKI-based Requirement-oriented System for Searching Paper

      JIANG Xin

      (Wenzhou Teaching andResearching Institute, Wenzhou 325000, China)

      Abstract: Digital library is one of the typical applications of web databases. To help users to effectively access the resources in digital li? brary, a requirement-oriented system for searching paper is proposed. By means of the combination of local search and online search, the system can deal with the users query in the way of batch processing. The details of the system based on the open-source libcurl library are introduced, which can construct and submit the query form to CNKI automatically.

      Key words: deep web; digital library; requirement-oriented; CNKI

      Web作為互聯(lián)網(wǎng)信息發(fā)布平臺(tái)蘊(yùn)含著海量信息,按照信息蘊(yùn)涵的“深度”可以將Web劃分為Surface Web和Deep Web[1]。與Surface Web相比,Deep Web蘊(yùn)藏了更加豐富的高質(zhì)量結(jié)構(gòu)化信息,也被稱為Web數(shù)據(jù)庫(kù)。如何使得用戶能夠方便地訪問(wèn)Web數(shù)據(jù)庫(kù)中隱藏的豐富資源是一項(xiàng)極其值得期待的需求[2],已經(jīng)成為近幾年來(lái)數(shù)據(jù)庫(kù)領(lǐng)域研究的熱點(diǎn)。

      作為Web數(shù)據(jù)庫(kù)典型應(yīng)用的數(shù)字圖書館[3],基于現(xiàn)代計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的數(shù)字信息資源系統(tǒng),將分散于各種載體、不同地理位置的信息資源以數(shù)字化的方式儲(chǔ)存,以網(wǎng)絡(luò)化的方式互相連接,通過(guò)分布式的信息管理實(shí)現(xiàn)全球范圍的信息資源共享[4]。近年來(lái),數(shù)字圖書館的建設(shè)得到飛速發(fā)展,知網(wǎng)、萬(wàn)方等數(shù)據(jù)庫(kù)中存儲(chǔ)著越來(lái)越多的豐富數(shù)字資源。然而,從如此海量的信息中快速獲取用戶所需的信息,并不是一件容易的事情。如何構(gòu)建以用戶需求為導(dǎo)向,以服務(wù)為中心[5]的數(shù)字資源檢索系統(tǒng)引起了廣泛關(guān)注。

      本文針對(duì)數(shù)字圖書館中的典型資源——中國(guó)知網(wǎng)(CNKI)進(jìn)行應(yīng)用研究,在分析其工作原理的基礎(chǔ)上,設(shè)計(jì)出一個(gè)根據(jù)用戶的需求批量地從知網(wǎng)獲取相關(guān)信息的按需論文檢索系統(tǒng),以實(shí)現(xiàn)用戶“隨需即取”的查詢體驗(yàn)。

      1基于知網(wǎng)的論文按需檢索系統(tǒng)框架

      通常,用戶要從知網(wǎng)、萬(wàn)方、期刊網(wǎng)等數(shù)據(jù)庫(kù)中下載論文資源,必須使用一個(gè)合法的帳號(hào)登錄到網(wǎng)站的檢索系統(tǒng),然后通過(guò)網(wǎng)站提供的查詢表單提交搜索關(guān)鍵字,網(wǎng)站后臺(tái)動(dòng)態(tài)地生成檢索結(jié)果,以網(wǎng)頁(yè)的形式返回給用戶。這種方式最大的不足在于一次只能進(jìn)行一個(gè)搜索,用戶需要花費(fèi)大量的時(shí)間等待網(wǎng)站的查詢響應(yīng)[6]。為了提高用戶查詢的效率,本文設(shè)計(jì)了一個(gè)按需的論文檢索系統(tǒng),借助于本地搜索和在線搜索的智能組合,能夠以批處理的方式響應(yīng)用戶的檢索請(qǐng)求,極大地提高了用戶的檢索效率。目前,我們已經(jīng)實(shí)現(xiàn)了基于中國(guó)知網(wǎng)的論文按需檢索原型系統(tǒng),系統(tǒng)的體系結(jié)構(gòu)圖如圖1所示。

      該系統(tǒng)的基本原理如下:在系統(tǒng)中,我們將用戶的歷史檢索請(qǐng)求存儲(chǔ)在本地?cái)?shù)據(jù)庫(kù)中。當(dāng)用戶提交一個(gè)新的檢索請(qǐng)求時(shí),系統(tǒng)首先檢索本地元數(shù)據(jù)庫(kù),判斷該請(qǐng)求是否存在于本地?cái)?shù)據(jù)庫(kù)中。如果存在,則進(jìn)行本地搜索并將與該查詢請(qǐng)求相關(guān)的論文返回給用戶。如果不存在,則系統(tǒng)自動(dòng)抽取用戶的檢索請(qǐng)求信息并構(gòu)造出知網(wǎng)能夠接收的查詢請(qǐng)求,提交給知網(wǎng)服務(wù)器進(jìn)行在線檢索。在將知網(wǎng)返回的查詢結(jié)果返回給用戶的同時(shí),系統(tǒng)存儲(chǔ)該查詢及相應(yīng)結(jié)果于本地服務(wù)器,便于后續(xù)查詢使用。

      2知網(wǎng)的工作原理分析

      中國(guó)知網(wǎng)(CNKI)是全球領(lǐng)先的數(shù)字出版平臺(tái),是一家致力于為海內(nèi)外各行各業(yè)提供知識(shí)與情報(bào)服務(wù)的專業(yè)網(wǎng)站[7]。從知網(wǎng)上獲取信息和從谷歌、百度等通用搜索引擎獲取信息的不同之處在于:知網(wǎng)是授權(quán)訪問(wèn)的網(wǎng)站,要想從知網(wǎng)上獲取信息,必須具有知網(wǎng)注冊(cè)用戶的權(quán)限,并且處于已登錄狀態(tài)。

      在知網(wǎng)的查詢首頁(yè),如果用戶指定了查詢信息并點(diǎn)擊“跨庫(kù)檢索”按鈕,瀏覽器將再次發(fā)送一個(gè)表單給知網(wǎng),該表單中的各個(gè)查

      圖1按需論文檢索系統(tǒng)體系結(jié)構(gòu)圖詢屬性包括:檢索項(xiàng)、匹配、開始年份、結(jié)束年份、檢索詞以及所選擇的數(shù)據(jù)庫(kù)。

      知網(wǎng)與谷歌、百度等搜索引擎獲取信息之間的另一個(gè)不同之處是:谷歌與百度把搜索關(guān)鍵字等相關(guān)信息直接拼接在url地址中,并用http的GET方式向服務(wù)器索取搜索結(jié)果;而知網(wǎng)則像它提交登錄信息一樣,把搜索關(guān)鍵字等相關(guān)信息拼裝在一個(gè)表單中,并用http的POST方式把該表單發(fā)送給服務(wù)器,以請(qǐng)求搜索結(jié)果。

      在查詢首頁(yè)中,當(dāng)用戶輸完檢索詞等相關(guān)信息并點(diǎn)擊“跨庫(kù)檢索”按鈕后,瀏覽器就把相應(yīng)的查詢屬性拼裝成一個(gè)表單,用POST方法提交給知網(wǎng)。

      在將該查詢表單發(fā)送給知網(wǎng)服務(wù)器之后,瀏覽器將收到一個(gè)如圖2所示的結(jié)果頁(yè)面。為表示方便,將被框起來(lái)的部分稱為“內(nèi)頁(yè)”,框意外的部分稱為“外頁(yè)”。實(shí)際上,在提交了第一個(gè)查詢表單之后,瀏覽器只收到了外頁(yè)。而當(dāng)瀏覽器繼續(xù)提交第二個(gè)表單后,才將收到內(nèi)頁(yè)。這第二個(gè)表單是由瀏覽器自動(dòng)提交的,不需要用戶再輸入相關(guān)的查詢信息。

      具體來(lái)說(shuō),瀏覽器在收到外頁(yè)后,根據(jù)外頁(yè)的“要求”自動(dòng)構(gòu)造了一個(gè)第二個(gè)查詢表單,該查詢表單不僅包括前面提到的所有查詢屬性,還包括了其他的一些默認(rèn)的屬性,如“searchflag=0”等。第二個(gè)查詢表單發(fā)送之后,瀏覽器將收到查詢結(jié)果頁(yè),也就是圖5中的內(nèi)頁(yè)。內(nèi)頁(yè)包含了所有符合要求的論文詳細(xì)信息的鏈接地址。這些鏈接地址是臨時(shí)的,一段時(shí)間之后將會(huì)失效,即過(guò)了有效時(shí)間之后用戶再點(diǎn)擊那些鏈接將無(wú)法跳轉(zhuǎn)到詳細(xì)信息的頁(yè)面。如果查詢結(jié)果數(shù)量比較多,結(jié)果頁(yè)面并不會(huì)一次把所有結(jié)果的鏈接都顯示出來(lái),而是每次只顯示10條,用戶可以點(diǎn)擊“下一頁(yè)”鏈接來(lái)繼續(xù)顯示后續(xù)的10條鏈接,以此類推。

      圖2知網(wǎng)的查詢結(jié)果頁(yè)面

      如果用戶在有效時(shí)間之內(nèi)點(diǎn)擊那些詳細(xì)信息的鏈接,那么瀏覽器將使用http的GET方法去獲取這個(gè)頁(yè)面,該頁(yè)面也就是用戶所需要的最終頁(yè)面,包含了論文的作者中文名,作者單位,關(guān)鍵詞,摘要等詳細(xì)信息,并提供了該論文的caj格式和pdf格式的全文供用戶下載。

      3按需論文檢索系統(tǒng)的實(shí)現(xiàn)

      在深入分析知網(wǎng)的信息獲取原理基礎(chǔ)上,本章將介紹如何實(shí)現(xiàn)基于知網(wǎng)的論文按需檢索系統(tǒng),利用程序自動(dòng)實(shí)現(xiàn)與知網(wǎng)服務(wù)器的交互功能,達(dá)到根據(jù)用戶需求從知網(wǎng)上批量下載資源的目標(biāo)。

      3.1系統(tǒng)類庫(kù)定義

      本文所實(shí)現(xiàn)的原型系統(tǒng)均基于libcurl庫(kù)進(jìn)行開發(fā),系統(tǒng)中所定義的主要類庫(kù)介紹如下。

      由于每個(gè)新定義的CURL類型指針在使用前都需要用curl_easy_init函數(shù)初始化,為了使用方便,將把CURL類型的指針?lè)庋b在Curl類中。

      class Curl{

      public:

      Curl(){根據(jù)*link的值調(diào)用curl_easy_init函數(shù)}

      Curl(const Curl&c){修改*link的值}

      Curl&operator=(const Curl c){復(fù)制c并修改*link} CURL*get();

      virtual~Curl()

      {

      根據(jù)*link的值調(diào)用curl_easy_cleanup函數(shù)

      }

      private:

      CURL*curl;

      int*link;

      };

      每次構(gòu)造一個(gè)新的Curl對(duì)象時(shí)都會(huì)由構(gòu)造函數(shù)自動(dòng)地調(diào)用curl_easy_init函數(shù)對(duì)curl成員進(jìn)行初始化,而每次刪除一個(gè)Curl對(duì)象時(shí)都會(huì)由析構(gòu)函數(shù)調(diào)用curl_easy_cleanup函數(shù)來(lái)對(duì)curl成員做清理工作。因此,使用Curl類將不用再考慮何時(shí)需要調(diào)用curl_easy_init函數(shù)和curl_easy_cleanup函數(shù),從而簡(jiǎn)化了對(duì)CURL指針的使用。

      類GetPage用于實(shí)現(xiàn)網(wǎng)頁(yè)信息的獲取功能。由于http協(xié)議提供了兩種獲取信息的方式:GET和POST,因此類GetPage定義為一個(gè)基類。可以通過(guò)調(diào)用set_ret_func_h等四個(gè)成員函數(shù)來(lái)設(shè)置如何保存獲取到的頁(yè)面和把獲取到的頁(yè)面保存到哪里。為了使用方便,GetPage的構(gòu)造函數(shù)指定了默認(rèn)的回調(diào)函數(shù)和存儲(chǔ)區(qū),這樣,就不必在每次獲取網(wǎng)頁(yè)前設(shè)置回調(diào)函數(shù)和存儲(chǔ)區(qū)了。

      為了使程序能夠分別使用GET方法和POST方法獲取頁(yè)面,從GetPage類派生出兩個(gè)類GetPage_get和GetPage_post,分別對(duì)應(yīng)使用GET方法和使用POST方法。其中GetPage_get類相對(duì)其基類GetPage沒有增加任何成員,而GetPage_post則增加了一個(gè)string成員post_content,用來(lái)存放表單的內(nèi)容。另外,雖然GetPage_get和GetPage_post都繼承了它們基類的url成員,但含義不一樣:Get? Page_get中的url存放所要獲取的頁(yè)面的url地址,而GetPage_post中的url存放的是提交表單的目的地址。

      class GetPage{

      public:

      typedef size_t(*ret_func)(void*,size_t,size_t,void*);

      GetPage(string u);

      GetPage(Curl c,string u);

      void set_ret_func_h(ret_func h);//設(shè)置報(bào)文頭的回調(diào)函數(shù)

      void set_ret_func_b(ret_func b);//設(shè)置報(bào)文體的回調(diào)函數(shù)

      void set_stream_h(void*sh); //設(shè)置報(bào)文頭的存儲(chǔ)區(qū)

      void set_stream_b(void*sb); //設(shè)置報(bào)文體的存儲(chǔ)區(qū)

      virtual int get_html(void); //獲取頁(yè)面

      void*get_sh(void); //獲取報(bào)文頭

      void*get_sb(void); //獲取報(bào)文體

      Curl get_Curl(void);//返回本對(duì)象所使用的Curl對(duì)象

      virtual~GetPage();

      protected:

      Curl curl;

      string url;

      ret_func head,body;

      void*streamh,*streamb;

      bool alloc_flag_h,alloc_flag_b;};

      由于需要頻繁地從獲取的頁(yè)面中解析出一些信息(如鏈接地址等),所以定義一個(gè)Parser類,用于從一個(gè)字符串中獲取以指定字段開頭,并以指定字段結(jié)尾的字符串。在類Parser中,read_file函數(shù)用于把源字符串讀到成員file中。parse函數(shù)的作用是從成員file中找出以head開頭并以tail結(jié)尾的字符串。在其參數(shù)中,如果reserve_head的值為true,則會(huì)在目標(biāo)字符串中保留head;如果為false,則在目標(biāo)字符串中不保留head。reserve_tail也一樣,表示是否保留tail。最后一個(gè)參數(shù)get_first_num表示最多把多少個(gè)符合條件的目標(biāo)字符串存放在作為返回值的list中,0表示返回所有符合條件的,n(n>0)表示返回符合條件的前n個(gè)。

      class Parser{

      public:

      Parser(string s);

      void read_file(string&str);

      listparse(string head,string tail,bool reserve_head,bool

      reserve_tail,unsigned int get_first_num=0);

      private:

      string file;

      listresult;

      };

      3.2知網(wǎng)的自動(dòng)登錄實(shí)現(xiàn)

      在Curl,GetPage和Parser三個(gè)類實(shí)現(xiàn)之后,就可以實(shí)現(xiàn)登錄知網(wǎng)的程序了。因?yàn)閘ibcurl庫(kù)支持自動(dòng)跳轉(zhuǎn),即自動(dòng)重定向,從而不用特意地去判斷是否需要跳轉(zhuǎn),而直接得到查詢首頁(yè)。登錄過(guò)程的流程如下所示。

      cnki_login函數(shù)最后返回Curl對(duì)象這一步是必需的,因?yàn)檫@個(gè)Curl對(duì)象“保存”著程序和知網(wǎng)之間的交互信息(cookie),即這個(gè)Curl對(duì)象維持著程序作為已登錄用戶的狀態(tài)。返回這個(gè)Curl對(duì)象將便于后續(xù)的查詢操作能始終使用這個(gè)Curl對(duì)象與知網(wǎng)進(jìn)行交互。

      其實(shí),從本質(zhì)上來(lái)講,整個(gè)登錄的過(guò)程就是為了使程序在之后的查詢過(guò)程中能始終以已登錄用戶的身份來(lái)與網(wǎng)站進(jìn)行交互,因此,cnki_login函數(shù)的最終目標(biāo)就是生成一個(gè)具有已登錄用戶身份的Curl對(duì)象,并把該對(duì)象返回給后續(xù)的程序使用。

      3.3本地?cái)?shù)據(jù)庫(kù)的存儲(chǔ)模式

      系統(tǒng)的本地?cái)?shù)據(jù)庫(kù)用于存儲(chǔ)用戶的查詢需求和查詢結(jié)果,主要包括兩個(gè)模式:需求表和結(jié)果表。需求表用來(lái)存放用戶的需求,即用戶對(duì)所要搜索論文的相關(guān)描述,程序?qū)?huì)根據(jù)每一條需求分別從知網(wǎng)上獲取相關(guān)信息。需求表的模式如圖3所示。其中,searchfield表示查找域,即“題名”,“關(guān)鍵詞”,“作者”等;database表示所要選擇的數(shù)據(jù)庫(kù);match表示匹配模式,“1”為精確匹配,“2”為模糊匹配;value表示搜索關(guān)鍵字;startyear和endyear分別表示查詢的起始年份和結(jié)束年份。

      圖3需求表模式

      結(jié)果表用來(lái)存放每一篇論文的相關(guān)信息,其模式如圖4所示。其中,titlech和titleen分別表示中文題名和英文題名;authorch和authoren分別表示中文作者名和英文作者名;keych和keyen分別表示中文關(guān)鍵詞和英文關(guān)鍵詞;abstractch和abstracten分別表示中文摘要和英文摘要;pdf_url表示該論文的下載鏈接地址。

      圖4結(jié)果表模式

      由于程序只需要對(duì)需求表執(zhí)行讀操作和對(duì)結(jié)果表執(zhí)行寫操作,因此僅為DbOper類定義兩個(gè)相應(yīng)的成員函數(shù),就可以實(shí)現(xiàn)用戶需求的獲取,DbOper類定義如下所示。

      class GetQuery{

      public:

      int setQuery(Query&);//獲取需求并拼裝成表單

      string getJQ()const;//獲取拼裝后的表單

      private:

      void joint();//把需求拼裝成表單

      Query q;

      string jointedQuery;//用來(lái)存放表單};

      3.4查詢處理的實(shí)現(xiàn)

      系統(tǒng)的查詢處理由類DoQuery實(shí)現(xiàn),其功能包括:把查詢表單提交給知網(wǎng),解析知網(wǎng)返回的結(jié)果頁(yè)面并獲取論文的詳細(xì)信息,以及把這些信息存入數(shù)據(jù)庫(kù)之中。DoQuery類定義如下所示。

      class DoQuery{

      public:

      DoQuery(const Curl&,const GetQuery&);

      void setGetQuery(const GetQuery&);

      void setUrl(const string&);

      int run(DbConn&);

      private:

      DoQuery();

      Paper detail_parse(string);

      Curl curl;

      string post_url;

      string post_content;

      };

      一般來(lái)說(shuō),應(yīng)該將所獲得的內(nèi)頁(yè)中的所有論文鏈接地址解析出來(lái),一頁(yè)解析完之后再解析后一頁(yè),直到所有鏈接地址都解析完成。但知網(wǎng)比較特殊,同一次搜索出的所有結(jié)果鏈接都是相關(guān)聯(lián)的。例如第一條結(jié)果鏈接地址為“/kns50/detail.aspx?QueryID= 17&CurRec=1”,則第二條的地址為“kns50/detail.aspx?QueryID=17&CurRec=2”,以此類推,每條結(jié)果的地址除了最后一個(gè)數(shù)字不同,前面的完全相同。因此,可以只解析出第一個(gè)結(jié)果鏈接的地址,抽取其最后一個(gè)數(shù)字之前部分地址,然后來(lái)推出所有結(jié)果的鏈接地址。該方法可以大大地提高程序的效率。假設(shè)某個(gè)搜索請(qǐng)求的結(jié)果有210條,每個(gè)結(jié)果頁(yè)面顯示10條結(jié)果,而獲取1個(gè)頁(yè)面的速度為0.2秒,那么用該方法將整整剩下(210-10)/10*0.2=4秒時(shí)間。

      在獲取了結(jié)果的地址之后,run函數(shù)將根據(jù)每個(gè)地址循環(huán)地通過(guò)GET方法從知網(wǎng)上獲取論文詳細(xì)信息的頁(yè)面。對(duì)于每一個(gè)論文詳細(xì)信息的頁(yè)面,run函數(shù)將會(huì)調(diào)用DoQuery類的私有函數(shù)detail_parse來(lái)從中解析出諸如作者名,關(guān)鍵字,摘要,論文下載鏈接地址等信息并存入數(shù)據(jù)庫(kù)中。

      3.5用戶查詢需求的響應(yīng)

      針對(duì)某一組用戶需求(查詢關(guān)鍵字),該系統(tǒng)可以將從知網(wǎng)檢索得到的有效結(jié)果全部存儲(chǔ)在本地?cái)?shù)據(jù)庫(kù)中,每條檢索結(jié)果記錄對(duì)應(yīng)需求表中相應(yīng)的需求編號(hào)。然而,對(duì)于不同用戶而言,其查詢需求各異,如果有效地利用系統(tǒng)存儲(chǔ)在本地的檢索結(jié)果是提高查詢效率的關(guān)鍵。由于系統(tǒng)在本地?cái)?shù)據(jù)庫(kù)中的需求表存儲(chǔ)了用戶查詢的相關(guān)信息,因此可以利用不同的SQL查詢來(lái)表達(dá)用戶的不同需求。

      不同用戶需求之間的關(guān)系可以通過(guò)其查詢結(jié)果集合間的關(guān)系所呈現(xiàn)。基于結(jié)果集合上的覆蓋關(guān)系,任意兩個(gè)需求可被分為相離、相交和相容三種情況。假設(shè)用戶需求都被執(zhí)行過(guò)至少一次,執(zhí)行后的返回結(jié)果已被存儲(chǔ)在數(shù)據(jù)庫(kù)中。需求關(guān)系判斷的基本思想如下:首先產(chǎn)生需求P、Q的對(duì)應(yīng)數(shù)據(jù)集data(P)、data(Q)。當(dāng)遍歷data(P)集合后,如未發(fā)現(xiàn)與data(Q)存在交集,則視為需求相離;當(dāng)所有data(P)中的記錄都相交于data(Q),則P相容于Q。當(dāng)data(P)與data(Q)部分相交,還要結(jié)合對(duì)data(Q)的遍歷做進(jìn)一步判斷。此時(shí),如果data(Q)中的記錄都相交于data(P),則是Q相容于P,否則P、Q是相交關(guān)系。

      由于判斷所需的數(shù)據(jù)均存儲(chǔ)于本地,對(duì)于已經(jīng)存儲(chǔ)在數(shù)據(jù)庫(kù)中的用戶需求關(guān)系判斷很容易實(shí)現(xiàn),但對(duì)于一個(gè)新的用戶需求而言,其查詢結(jié)果尚未獲取,而無(wú)法使用上述方法判斷與已有需求之間的關(guān)系。我們通過(guò)構(gòu)造SELECT查詢?cè)诒镜財(cái)?shù)據(jù)庫(kù)中檢索是否存在滿足新用戶需求的數(shù)據(jù)。例如,新用戶需求形如“searchfield=SF,value=V,…”,我們可以構(gòu)造如下查詢:“select * from public.que? ry where searchfield=SF and value like‘%V%”,在用戶需求表中檢索匹配的記錄,如果檢索成功,則將這些需求對(duì)應(yīng)的查詢結(jié)果直接返回給用戶,否則就將用戶需求提交知網(wǎng)進(jìn)行在線查詢。通過(guò)這種處理方式,系統(tǒng)一定程度上提高了用戶需求的響應(yīng)效率,而更加完善的用戶需求響應(yīng)方案也是我們下一步研究的重點(diǎn)。

      4結(jié)論

      為了幫助用戶高效地訪問(wèn)數(shù)字圖書館中的海量資源,本文提出一種基于知網(wǎng)的按需論文檢索系統(tǒng),通過(guò)本地搜索和在線搜索的有效結(jié)合,批量處理用戶的查詢請(qǐng)求,進(jìn)行快速響應(yīng)。下一步將繼續(xù)完善本系統(tǒng),將其擴(kuò)展到其它的數(shù)字資源庫(kù)。

      參考文獻(xiàn):

      [1]劉偉,孟小峰.Deep Web數(shù)據(jù)集成研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2007,30(9):1475-1489.

      [2]崔曉軍,彭智勇.Deep Web信息按需集成研究綜述[J].武漢大學(xué)學(xué)報(bào):理學(xué)版.2009,55(4):465-472.

      [3]馬翠嫦.國(guó)外數(shù)字圖書館可用性評(píng)價(jià)研究綜述[J].現(xiàn)代圖書情報(bào)技術(shù),2007,2(2):1-6.

      [4]陳亞召.以需求為導(dǎo)向的數(shù)字信息資源建設(shè)模式研究[J].圖書館,2009(2):105-106.

      [5]李虹.面向用戶的數(shù)字圖書館信息服務(wù)模式研究[J].情報(bào)雜志,2007,26(8):134-136.

      [6]魯海寧.自建數(shù)據(jù)庫(kù)信息服務(wù)平臺(tái)模式構(gòu)建[J].圖書館工作與研究,2009(2):40-43.

      [7]朱延峰.數(shù)字圖書館信息服務(wù)模式問(wèn)題簡(jiǎn)析[J].南陽(yáng)師范學(xué)院學(xué)報(bào),2011(8):1-5.

      猜你喜歡
      知網(wǎng)數(shù)字圖書館
      著作權(quán)使用聲明
      基于知網(wǎng)的翻譯研究方向畢業(yè)論文寫作
      近三年維吾爾語(yǔ)言研究情況綜述
      高校圖書館的未來(lái)發(fā)展模式芻議
      淺析“互聯(lián)網(wǎng)+”時(shí)代的圖書館管理
      資治文摘(2016年7期)2016-11-23 01:00:24
      高校數(shù)字圖書館資源整合的初探
      商情(2016年39期)2016-11-21 09:27:10
      基于云計(jì)算的數(shù)字圖書館建設(shè)與服務(wù)模式研究
      從谷歌案析數(shù)字圖書館對(duì)作品的使用行為
      芻議數(shù)字圖書館計(jì)算機(jī)網(wǎng)絡(luò)的安全技術(shù)及其防護(hù)策略
      HowNet在自然語(yǔ)言處理領(lǐng)域的研究現(xiàn)狀與分析
      科技視界(2016年5期)2016-02-22 11:41:39
      宁明县| 平南县| 汶川县| 蒙城县| 二连浩特市| 永康市| 淮南市| 武平县| 长子县| 房山区| 乐东| 鹿邑县| 龙海市| 扬中市| 昌邑市| 伊金霍洛旗| 仲巴县| 淳化县| 文化| 鄂温| 永福县| 赣州市| 龙泉市| 汉中市| 南岸区| 祁连县| 海丰县| 遂川县| 南京市| 侯马市| 墨江| 乌兰浩特市| 浦东新区| 兴海县| 台北市| 安远县| 剑河县| 柳河县| 宜阳县| 巍山| 武胜县|