高 營
(深圳大學城圖書館 廣東深圳 518055)
科技論文是科研人員研究的結晶,其被各類數據庫收錄及被引用的次數在一定程度上能反映學者的科研能力和水平,因此論文查收查引證明被廣泛應用于職稱評定、課題申報、獎勵申報、人才選拔、科研評估以及成果鑒定等工作中[1-3]。由于其可計量以及具有相對客觀性等,查收查引服務目前仍然是高校圖書館信息檢索工作的一項重要內容。
隨著我國科研論文數量的增加,論文收錄引用的需求隨之增加,深圳大學城圖書館(以下簡稱“我館”)近年來一直呈上升趨勢,2017年全年完成查收查引報告1 414份,檢索文獻30 018篇。論文查收查引服務是工作量大、重復度高的勞動,以人工為主的工作方式已難以滿足及時、高質量的服務要求[4-6]。同時委托人一般會在項目申報截止前較短時間集中申請論文查收查引證明,導致同時收到大量委托,更增加了工作難度。圖書館員們從各種方面研究如何提高工作效率,目前已有許多關于手工檢索技巧、流程規范等方面的研究文獻[1-3,7]。中國科學技術大學樊亞芳、陳鍇等提出利用Excel的篩選功能、Endnotes Web以及EndNote、NoteExpress等文獻管理軟件輔助檢索,改進檢索和統計流程[1-2,7]。華南理工大學圖書館涂穎哲利用工具軟件進行論文查收查引,但其他引查詢仍需要人工進行二次檢索[8]。也有一些機構開發了論文查收查引工具,如中國科學院系統[9-10]以及CALIS技術中心與北京大學圖書館聯合開發的CALIS論文收錄及引用系統[11]。查收查引自動化工作有較好的設計和實現,但系統較為復雜,需要進行購買且每個圖書館有其各自不同的需求,有一些功能不能完全滿足。
論文查收查引工作中他引次數的查詢手工檢索步驟復雜,在整個工作中占用較多工作量。我館查收查引工作中他引次數采用的嚴格排自引,即引用文獻和被引用文獻中,只要有一個作者相同即為自引。通常情況下,論文查收查引中的去除自引論文工作是利用WOS(Web of Science)數據庫的作者分析功能及精煉檢索功能來完成的,這種方法適用于對于他人引用次數不多或者需檢索引用情況的文獻合作者不多時,當用戶查詢的論文引用過多或者原論文合作者過多時,如果檢索人員仍使用精煉檢索將無法完成多合作者引用的排除[2,12],該方法工作量大且容易出錯。上述作者排除法需要對每一篇論文的被引論文列表進行一次操作,存在大量的重復勞動,工作效率低下。中國科學技術大學樊亞芳等采用EndNote、NoteExpress等文獻管理軟件中的檢索功能來解決這個問題,利用檢索功能在被引論文Library中查找作者含有被檢索人的論文,即可批量去除自引論文,利用Label 功能分類統計總他引頻次[1-2]。該方法能減少一定的勞動強度,但需要下載所有施引文獻。哈爾濱工業大學圖書館李莘等采用的他人引用查詢方法在當用戶查詢的論文引用過多或者原論文合作者過多時,如果檢索人員仍使用精煉檢索將無法完成多合作者引用的排除,巧用WOS數據庫的高級檢索功能,將高級檢索功能與被引參考文獻檢索結合完成 SCI/SSCI/A&HCI多合作者自引的排除,檢索方式為:#1 NOT AU=(被引文章所有作者的姓名),其中#1為被引文獻標題[12]。高級檢索的方法存在一個問題,如果論文作者非常多,手工編寫檢索并不是一個簡單的方法。華南理工大學圖書館涂穎哲的論文查收查引工具軟件的他引查詢過程可以軟件提取作者列表,然后在Word軟件里利用查找替換生成檢索式來進行查詢[8]。
我館采用的他引查詢方法是利用檢索式排除作者的方法,在工作中采用Word宏來輔助生成WOS平臺排除自引檢索式來輔助檢索,這種方法可以在一定程度上減少手工工作,但未減少在線檢索的步驟,仍需要花費較多的時間。
電子科技大學藺梅芳應用Python語言開發的SCI引文檢索自動化軟件能夠實現4種他引標準下的引文檢索,該軟件他引判斷方法通過程序讀入施引文獻,進行作者字段比較來排除自引,仍需要下載所有施引文獻記錄,且檢索過程采用模擬瀏覽器訪問方式來獲取數據[13]。
我們在工作中結合工作實際,利用Python語言開發了WOS他引查詢軟件,利用WOS平臺提供的APIs(Web of Science Web Services)獲取數據,采用SOAP(Simple Object Access Protocol)可以直接獲取WOS平臺提供的格式化數據。程序可以提取輸入內容中的WOS入藏號,自動生成相關檢索式進行檢索,直接獲得他引次數,減少人工操作的步驟,大大減輕了工作強度,提高了準確度,并且結果具有可重復性。
軟件模擬人工查詢他引次數的步驟,實現自動獲得他引次數,具體流程如下(見圖1)。

圖1 他引查詢程序流程圖
輸入信息可以直接從Word文件或網頁信息復制粘貼含有入藏號的信息,也可以輸入WOS平臺導出記錄文件,軟件從輸入信息中利用正則匹配提取所有入藏號信息。軟件按照入藏號通過WOS API查詢引用次數,如果引次數為0次則不進行他引次數查詢,如果引用次數大于0次,進入他引查詢步驟,直至查詢完成所有入藏號的查詢,顯示輸出結果。
Python語言誕生于20世紀90年代初,現今已經成為最受歡迎的程序設計語言之一[14],在最近的Git Hub排行榜中名列前茅。Python是一種解釋型、面向對象、動態數據類型的高級程序設計語言,有豐富的標準庫和其他一些擴展庫,可以用較少的代碼完成一些復雜的工作。并且Python具有簡單、易學、免費、開源等諸多優點。GitHub中有非常多的代碼實例可供參考,是一種易于閱讀和方便編寫代碼的語言,因此我們選擇Python作為開發語言。
藺梅芳等開發的引文自動化檢索軟件[13]和涂穎哲開發的論文查收查引工具軟件[8]等均采用模擬瀏覽器訪問的方式來獲取數據,通過分析網頁結構來提取數據。這種方式有可能受到網頁讀取速度的影響[13],如果網站升級網頁結構變化,則需要修改程序來適應相應的變化,利用WOS API可以避免這些影響。
Web of Science Web Services[15]是基于SOAP 1.1 (Simple Object Access Protocol,簡單對象訪問協議)和WSDL 1.1(Web Services Description Language,網絡服務描述語言)的API,用于訪問和搜索Web of Science數據庫訂閱內容。該API有兩個服務接口WOKMWSAuthenticate和WokSearch。其中WOKMWSAuthenticate是身份驗證和會話管理服務,WokSearch提供數據檢索服務。可以在學校或機構IP范圍內通過WOKMWSAuthenticate接口獲取授權信息,然后通過WokSearch接口來進行檢索和獲取數據。可以通過該API可獲取到格式規范的XML數據(見圖2),由于僅獲取所需要的數據,不需要打開整個網頁,可避免受到網頁讀取速度或網站改版的影響,且所獲取數據具有穩定、規范的數據結構。

圖2 通過WOS API獲取數據結構
WOS數據庫收錄的每一篇文章都有一個唯一的入藏號,入藏號是以“WOS:”開頭,后面是15—16位數字或字母組成的編號,我們可以用正則表達式(WOS:w{15,16})來匹配提取所有入藏號。
通過Python的suds庫訪問WOS API來獲取數據(見圖3),通過WOKMWSAuthenticate接口的authenticate操作來獲取授權會話session SID,并將獲得的授權信息加入搜索進程。WokSearch服務有7個檢索操作[15],包括search、citedReference、citingArticles、relatedRecords、retrieveById、citedReferencesRetrieve、retrieve。其中Search查詢可以提交查詢并返回結果,與網頁界面高級檢索查詢功能返回結果一致;citingArticles查詢可以獲取引用查詢文章的所有文章,我們可以通過這個功能檢索引用次數;可以結合search和citingArticles進行他引次數查詢。首先通過citingArticles查詢文章的所有引用次數,即總引次數,同時通過這個查詢可以獲得所查詢文章的詳細信息以及該查詢的查詢序號(queryId),從所得詳細信息中提取出所有作者列表,生成檢索式#queryId NOT AU=(被引文章所有作者的姓名),通過search查詢獲得他引次數及他引文章列表信息。

圖3 程序實現過程
為了方便其他同事利用該程序,利用wxPython編寫可視化界面GUI(見圖4),并用pyinstaller打包成獨立的exe文件,可以拷貝到任何電腦使用,不需要電腦安裝Python環境的步驟。程序可以通過導入文本格式文件來提取入藏號,檢索完成后可以導出csv格式的文件,方便后續工作。

圖4 他引次數查詢程序界面
軟件開發以來已經使用兩年有余,期間經歷WOS從湯森路透到科睿唯安的轉變,均能穩定使用。由于使用步驟簡便,輸出結果穩定可靠,可以節約大量時間,減少重復性勞動,提高工作效率,得到了查收查引工作人員的認可。
表1比較了本文程序及涂穎哲[8]、王學勤[9]和藺梅芳[13]所發表論文的引文檢索用時,本程序同藺梅芳文章中的程序用時相當,在引用查詢方面優于其他兩篇文章中的程序。因為均為Python語言編寫,均采用多線程,考慮樣本選擇、網絡環境等可能存在差異,效率基本相當,但其結果有部分還需要人工復核。本程序通過兩次檢索可以得到他引查詢結果。

表1 引文查詢用時相關文獻比較
此外,本程序具有非常好的擴展性,除了可以檢索WOS總引、他引外,通過設置檢索數據庫范圍還可以檢索SCI總引和他引。通過設置檢索時間范圍,可以滿足一些特殊的需要。比如某項目需要檢索近5年的SCI引用情況,通過修改檢索時間范圍timespan開始和結束時間,就可以完成相應他引次數的查詢。比如某大型科技公司集團有近千篇SCI收錄論文,其科技辦工作人員想知道每個月其所有論文的被引次數變化,如果通過人工檢索工作量可想而知,經常需要幾天的時間,對本程序進行簡單修改,只需要一個小時左右即可完成檢索,省時省力,而且還能保證數據準確可靠。
本文利用程序來進行他人引用次數的查詢,減輕了工作強度,并且減少了人為操作帶來的誤差和錯誤,有很好的重復性和穩定性。程序為單文件形式,方便傳播及使用,得到了檢索人員的好評。
在后續工作中可以在軟件的易用性、美觀性等方面進行改進。例如,可建立數據庫保存相關人員的論文記錄,下次再進行檢索時僅需要檢索新增加記錄即可;除了檢索總引次數和他引次數外,可同時導出檢索論文列表及引文列表,更進一步可生成出具報告的相關內容和格式,最大程度地降低人工工作強度。