小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

基于Python語言的WOS引文檢索軟件設(shè)計與實現(xiàn)

 老莊走狗 2022-06-07 發(fā)布于浙江

摘 要 為提高查收查引的工作效率與工作質(zhì)量,論文設(shè)計了WOS引文檢索自動化程序,利用Python語言,結(jié)合WOS API 接口和Selenium開源包,設(shè)計并實現(xiàn)WOS引文檢索軟件。該軟件完全替代人工操作,實現(xiàn)全過程的自動化處理,有效提高部門整體的工作效率。

關(guān)鍵詞 查收查引 引文檢索 Python  WOS API  Selenium

分類號G254.97;G252.62

DOI 10.16810/j.cnki.1672-514X.2020.11.010

Design and Practice of WOS Cited Reference Retrieve Programmer With Python

Yu Chenlin

Abstract In order to improve the efficiency and quality of cited reference retrieve service, this paper designs an automatic program for WOS cited reference retrieval. Using Python language, this paper employs the WOS API interface and Selenium open source package, designs the automatic retrieval system of WOS cited reference. This program realizes the whole process of automatic processing, which completely replacing manual processing part, and effectively improves the efficiency of the departments workflow.

Keywords Cited reference retrieval service. Cited reference retrieval. Python. WOS. API. Selenium.

0 引言

隨著國家科研管理事業(yè)的不斷發(fā)展,科研人員對于學(xué)術(shù)研究成果的查新需求迅猛增加,導(dǎo)致各高校圖書館的查收查引服務(wù)工作也不斷增加,浙江大學(xué)圖書館查收查引年均服務(wù)人次達五六千以上[1],深圳大學(xué)城圖書館查收查引年均服務(wù)人次達1400以上[2],筆者所在單位查收查引年均服務(wù)人次達兩千以上。隨著查收查引需求的迅速增長,以人工操作為主的查收查引工作模式已經(jīng)不能滿足現(xiàn)有服務(wù)需求。如何改進與優(yōu)化查收查引服務(wù)成為圖書館學(xué)界和業(yè)界的關(guān)注重點,包括檢索技巧的改進[3]、半自動化的報告格式生成和文獻數(shù)量統(tǒng)計[4]、查收查引系統(tǒng)的研發(fā)[5-6]、引文自動下載實現(xiàn)[2,7-8]等。以上研究促進查收查引服務(wù)從最初的手工處理到現(xiàn)在的半自動化。

目前,各高校圖書館已有較為成熟的查收查引的服務(wù)體系,但其工作效率有待提高。以筆者所在單位為例,上海大學(xué)圖書館情報部雖已研發(fā)查收查引報告的半自動化軟件,實現(xiàn)作者署名統(tǒng)計、總引與他引計算、論文的各數(shù)據(jù)庫收錄情況統(tǒng)計、自動生成規(guī)范化報告等,但需要人工下載WOS引文數(shù)據(jù)。引文人工下載這部分工作,重復(fù)性高、效率低下,需要消耗大量時間與精力。因此,本研究基于上海大學(xué)圖書館查收查引服務(wù)的需求,利用Python語言實現(xiàn)WOS引文檢索軟件,實現(xiàn)WOS引文自動下載。該軟件替代館員重復(fù)機械的手工處理部分,解放了館員的勞動力,促使館員進行更多創(chuàng)造性工作,提升了整個部門的工作效率。

1 現(xiàn)有查引檢索軟件的不足及改進技術(shù)

當(dāng)前已有的查收查引系統(tǒng)均設(shè)計了引文檢索功能,如中科院查收查引系統(tǒng)的引用檢索功能[5]、CALIS論文收錄及引用檢索系統(tǒng)的引用檢索[6]。除此之外,各高校圖書館館員利用爬蟲技術(shù)來設(shè)計與實現(xiàn)引文自動檢索軟件,以自動化的方式從網(wǎng)絡(luò)上下載、解析和組織數(shù)據(jù)[9]。涂穎哲通過POST方法獲取網(wǎng)頁內(nèi)容,利用正則表達式提取網(wǎng)頁中特定區(qū)域的內(nèi)容[7],藺梅芳基于Python語言利用urllib2以及urllib標準庫,對目標URL發(fā)出GET請求,解析返回內(nèi)容,來實現(xiàn)引文自動下載[8],高營利用WOS的API Expand接口進行查詢,穩(wěn)定、快速獲取論文的引用詳情[2],陳月從基于WOS的AMR和API Lite接口定時自動批量下載本機構(gòu)的論文及其引文[10]。其中,涂穎哲和藺梅芳是通過通信協(xié)議發(fā)送請求,解析獲得請求返回結(jié)果,從而得到引文信息,不屬于模擬瀏覽器操作,容易受網(wǎng)頁結(jié)構(gòu)變化和網(wǎng)站的反爬蟲策略的影響,導(dǎo)致原有程序不能使用。高營和陳月從利用的是WOS的API接口,一是讀取速度很快,二是程序較為穩(wěn)定,不受網(wǎng)頁結(jié)構(gòu)變化和網(wǎng)站反爬蟲影響。

利用WOS API也存在一些局限。WOS平臺提供的API接口比較[11]如表1所示。從表1可知,AMR偏重文章的被引頻次,API Lite偏重文章的題錄信息的查詢,API Expanded偏重文章的全記錄信息的查詢,包括作者地址、通訊作者及其地址等。API Expanded類似網(wǎng)頁檢索的全記錄,返回文章的全部信息,是查收查引服務(wù)最佳選擇,但需要付費使用。通過AMR和APILite方法,均無法獲取引文文章的作者地址,很難區(qū)別文章的自引和他引,無法滿足科研人員對于他引次數(shù)統(tǒng)計的需求。

2 軟件設(shè)計思路

軟件設(shè)計的目的是實現(xiàn)WOS引文自動下載工作。本單位未購買WOS API Expanded接口,而AMR和API Lite接口不能滿足需求,因此,筆者利用Python的免費、開源的Selenium數(shù)據(jù)包,設(shè)計WOS引文檢索軟件,模擬人工下載操作,實現(xiàn)WOS引文的全記錄內(nèi)容、純文本格式的自動下載。人工下載引文流程可簡化為兩個部分,第一部分是引文頁面鏈接的獲取,第二部分是引文數(shù)據(jù)的下載保存。首先,在WOS核心合集數(shù)據(jù)庫內(nèi),以被檢索論文的入藏號進行檢索;其次,獲得被檢索論文在WOS核心合集的鏈接;然后,判斷引文次數(shù),若引用次數(shù)等于0,則返回查詢步驟,否則,進入下一步;最后,到達該論文的引文頁面,以全記錄內(nèi)容、純文本格式導(dǎo)出保存。具體流程如圖1所示。

3 軟件模塊分析與實現(xiàn)

3.1 引文鏈接隊的獲取

AMR是WOS數(shù)據(jù)庫的API接口,通過API接口來處理請求并返回指定的數(shù)據(jù)。AMR接口利用入藏號、題目、作者和出版物等為檢索條件,查詢所需的指定數(shù)據(jù),如被引頻次、到WOS數(shù)據(jù)庫全紀錄超鏈接、到WOS的施引文獻超鏈接、到WOS的相關(guān)記錄超鏈接、DOI號、PMID號、入藏號[12]。本研究利用WOS數(shù)據(jù)庫的AMR接口,直接、批量獲取所有被檢索論文的引文頁面鏈接,節(jié)省了檢索文獻達到引文頁面的時間。AMR查詢的返回的指定數(shù)據(jù)是規(guī)范格式的XML數(shù)據(jù),見圖2。若該論文的引用次數(shù)為0,則該論文的查詢結(jié)果內(nèi),不會出現(xiàn)引用次數(shù)和引用頁面鏈接的字段。

雖然AMR僅能進行單次檢索,但是通過組建多個AMR檢索式,可以實現(xiàn)檢索文獻清單的批量檢索。本軟件利用正則表達式解析檢索論文清單中的入藏號,獲取檢索論文的入藏號后,以入藏號為檢索條件,通過AMR接口發(fā)送請求,借助Beautiful Soup庫,解析返回的規(guī)范格式的XML數(shù)據(jù),可直接得到檢索文獻清單中,所有引文次數(shù)大于0的文獻的引文鏈接。本軟件的引文鏈接隊的獲取功能,可在幾秒內(nèi),返回需要下載的引文頁面鏈接隊,無需引文次數(shù)查詢—引文鏈接獲取的步驟,極大減少引文頁面獲取部分的用時。

3.2 引文數(shù)據(jù)下載保存

為了便于后續(xù)程序?qū)τ谒c自引的區(qū)別與計算,本研究需要以引文的全記錄內(nèi)容、純文本格式保存。因此,本研究采用Python語言中的開源數(shù)據(jù)包Selenium來實現(xiàn)引文數(shù)據(jù)下載保存。

Selenium是一個用于Web應(yīng)用程序測試的工具,可驅(qū)動瀏覽器執(zhí)行特定操作[13]。Selenium具有元素定位、網(wǎng)頁延時的顯示等待和隱示等待功能[14],可以實現(xiàn)頁面的點擊、下滑、資源加載與渲染等。Selenium主要用于自動化測試,支持瀏覽器驅(qū)動,可以控制瀏覽器的對象元素。因此,Selenium經(jīng)常被用于網(wǎng)絡(luò)爬蟲的人工模擬自動化步驟。常見的反爬蟲措施,有修改請求頭、修改爬蟲時間間隔、使用代理等[15],而Selenium驅(qū)動瀏覽器執(zhí)行操作,直接避免基于User-Agent的反爬蟲技術(shù),進行JavaScript交互完成爬蟲任務(wù)。

本研究將使用Chrome瀏覽器、Selenium和Python語言,構(gòu)建引文自動下載的結(jié)構(gòu),Chrome瀏覽器負責(zé)渲染解析JavaScript,Selenium負責(zé)驅(qū)動瀏覽器,Python進行程序操作與處理。引文數(shù)據(jù)下載保存的流程為:①根據(jù)AMR返回的引文頁面鏈接隊;②利用Selenium驅(qū)動Chrome瀏覽器,打開引文頁面;③應(yīng)用Python語言點擊保存選項,選擇保存內(nèi)容與格式,最后點擊保存,實現(xiàn)引文自動下載。在引文頻次大于500次的情景下,本軟件模擬人工下載步驟,計算循環(huán)下載的次數(shù)和循環(huán)下載的記錄區(qū)間,通過不斷循環(huán)填寫下載的記錄區(qū)間,實現(xiàn)引文的全部下載。

本軟件的引文數(shù)據(jù)下載保存功能包括了下載環(huán)境檢查、引文保存選項填寫、引文重命名以及轉(zhuǎn)移、引文下載情況檢查等步驟。圖3為軟件部分功能代碼展示。

4 軟件整體流程與運行步驟

軟件主要按照兩個部分展開,見圖4。第一部分,引文鏈接隊的獲取,軟件利用正則式表達自動提取檢索清單論文的入藏號,通過AMR接口檢索,得到檢索清單論文中的引文次數(shù)大于0的論文的引文鏈接隊。第二部分,引文數(shù)據(jù)下載保存,對獲取的引文鏈接隊,逐個使用Selenium進行引文的全記錄內(nèi)容和純文本格式的保存下載。

為方便其他館員的使用,本研究利用pyinstaller將代碼打包成獨立的exe文件,使得軟件的使用不受電腦環(huán)境的限制。該軟件操作簡便,首先在輸入文件夾內(nèi)放入被檢索文獻的全記錄的純文本文件作為輸入信息,其次點擊運行exe文件,然后等待程序運行完畢,最后在結(jié)果文件內(nèi),查看下載情況核對表和引文文件。

5 效果分析

本軟件具有穩(wěn)定性好、操作簡便、過程可視化、擴展性和應(yīng)用性較好等特點。本軟件從首次應(yīng)用到現(xiàn)在已經(jīng)有兩年的時間,可證實軟件的穩(wěn)定性。本軟件操作簡便,無需技術(shù)背景,館員只需將軟件拷貝到操作電腦內(nèi),點擊exe即可運行WOS引文檢索軟件。本軟件運行過程可視化,在運行程序的界面上,會顯示下載的進度,也可看到軟件操作Chrome瀏覽器自動進行加載、點擊與下載等。本軟件擁有良好的擴展性,為了滿足本單位需求,本軟件將下載選項設(shè)置為全記錄內(nèi)容、純文本格式,下載選項可以根據(jù)自身需求進行重新設(shè)置。本軟件有較強的實用性,情報部面臨大量題錄數(shù)據(jù)下載任務(wù),利用本軟件大于500條引文的循環(huán)下載功能,可將該功能擴改為所需題錄數(shù)據(jù)的批量數(shù)據(jù)自動下載。

本軟件仍存在一定的局限性,需要定期維護。本軟件從首次應(yīng)用到現(xiàn)在,WOS網(wǎng)站經(jīng)過升級,頁面結(jié)構(gòu)變化,導(dǎo)致原有軟件不能使用,需要隨之修改軟件內(nèi)的部分語句,維護軟件的長期使用。從表2可發(fā)現(xiàn),與其他軟件相比,本研究的引文下載的用時方面不占優(yōu)勢,但與人工下載用時相比,各軟件的下載用時均小于人工下載用時。僅通過表2的用時很難客觀比較各軟件的下載速度。各軟件的下載用時受很多因素的影響,比如下載任務(wù)的論文數(shù)量、網(wǎng)絡(luò)速度、測試電腦的CPU等,需要將各軟件放置在同等客觀條件下進行多次測試。本研究僅以理論角度來分析軟件用時。API是不同程序之間進行交互的接口,實現(xiàn)約定好對接的標準和規(guī)則,通過API查詢引文,就可直接獲取所需數(shù)據(jù),API方法下載更為快捷與穩(wěn)定。本軟件僅采用API查詢獲取引文鏈接隊,通過瀏覽器跟服務(wù)器之間的一系列交互,才能獲取引文數(shù)據(jù),因此,本軟件在下載速度上不占優(yōu)勢。

總之,本軟件主要是滿足上海大學(xué)圖書館情報部的查收查引系統(tǒng)的需求,實現(xiàn)人工下載的全過程,減少館員重復(fù)性、機械性的操作步驟,提高查收查引的工作效率與工作質(zhì)量,為館員節(jié)約大量的時間與精力,從而進行更多創(chuàng)造性工作。

參考文獻:

朱玉奴.查收查引用戶需求及高質(zhì)量服務(wù)策略研究[J].情報探索,2019(4):65-70.

高營.基于WOS API的論文自動查收查引程序設(shè)計與實現(xiàn)[J].圖書館研究與工作,2019(4):82-85.

宋成方.查收查引服務(wù)質(zhì)量提高路徑及其延伸服務(wù)探析[J].山東圖書館學(xué)刊,2012(5):47-50.

樊亞芳,陳鍇.利用Excel和EndNote Web提高論文查收查引工作效率[J].圖書館雜志,2013,32(1):32-34,60.

王學(xué)勤,郝丹,鄭菲,等.“查收查引報告自動生成系統(tǒng)”應(yīng)用實踐研究[J].圖書情報工作,2014,(16):131-137.

馬芳珍,李峰,季梵,等.對CALIS查收查引系統(tǒng)的測試和應(yīng)用效果評價[J].大學(xué)圖書館學(xué)報,2016,34(2):97-102.

涂穎哲.論文查收查引工具軟件的設(shè)計與應(yīng)用實踐[J].農(nóng)業(yè)圖書情報學(xué)刊,2015,27(8):34-38.

藺梅芳,翟燕,張宇娥.應(yīng)用Python語言的引文檢索自動化軟件設(shè)計與實踐[J].四川圖書館學(xué)報,2016(3):42-45.

希普·萬登·布魯克,巴特·巴森斯.數(shù)據(jù)科學(xué)實戰(zhàn)之網(wǎng)絡(luò)爬取 Python實踐和示例[M].北京:機械工業(yè)出版社.2019:2.

陳月從,方燕虹,武桂芹,等.基于云平臺的論文自動查收查引移動應(yīng)用系統(tǒng)[J].情報探索,2016(03):66-72.

Web of Science. What sets Web of Science data apart[EB/OL]. (2020-04-01) [2020-07-25].https://clarivate.com/webofsciencegroup/solutions/xml-and-apis/.Web of Science. Links artile match retrieval service[EB/OL]. (2020-04-01) [2020-07-25].http://help.incites.clarivate.com/LAMRService/WebServiceOperationsGroup/requestAPIWoS.html/.

韋世東.Python 3反爬蟲原理與繞過實戰(zhàn)[M].北京:人民郵電出版社.2020:15.

樊濤,趙征,劉敏娟.基于Selenium的網(wǎng)絡(luò)爬蟲分析與實現(xiàn)[J].電腦編程技巧與維護,2019(9):155-156,170.

唐松, 陳智銓. Python 網(wǎng)絡(luò)爬蟲從入門到實踐[M] .北京:機械工業(yè)出版社, 2017: 132-140.

虞晨琳 上海大學(xué)圖書館助理館員。 上海,200444。

(收稿日期:2020-07-26 編校:陳安琪,左靜遠)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多