新年新氣象,超級(jí)文獻(xiàn)下載工具更新了!一行命令下載任意文獻(xiàn)

之前為了解決學(xué)生無力支付國(guó)內(nèi)部分論文平臺(tái)的付費(fèi)閱讀的問題,我們推出了超級(jí)文獻(xiàn)下載工具:你不得不知道的python超級(jí)文獻(xiàn)批量搜索下載工具。
在最初的這幾個(gè)版本中,同學(xué)們必須通過編寫代碼才能選擇不同的文獻(xiàn)源去搜索和下載文獻(xiàn)。很多同學(xué)在使用過程中會(huì)由于對(duì)Python不熟悉或者環(huán)境沒有配置好而產(chǎn)生不少問題。
為了解決這些問題,我們給他增加了命令行調(diào)用的方式,并上傳到了PyPi,你只需要一行命令,就能下載到你所需要的文獻(xiàn)?。ǜ兄x?@hulei6188?的開源貢獻(xiàn))
1.準(zhǔn)備
開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,請(qǐng)?jiān)L問這篇文章:超詳細(xì)Python安裝指南?進(jìn)行安裝。
Windows環(huán)境下打開Cmd(開始—運(yùn)行—CMD),蘋果系統(tǒng)環(huán)境下請(qǐng)打開Terminal(command+空格輸入Terminal),輸入命令安裝依賴:
pip install scihub-cn看到 Successfully installed ... 就代表成功安裝scihub-cn。
不過請(qǐng)注意,scihub-cn依賴 aiohttp 模塊進(jìn)行并發(fā)的下載,因此支持的最低Python版本為3.6.
項(xiàng)目源代碼:https://github.com/Ckend/scihub-cn
2.Scihub-cn 使用方法
2.1 使用DOI號(hào)下載論文
首先讓我們來試試根據(jù)DOI號(hào)下載文獻(xiàn):
scihub-cn -d 10.1038/s41524-017-0032-0下載的論文會(huì)自動(dòng)生成在當(dāng)前文件夾下:

你也可以選擇將其下載到任意目錄下,只需要添加 -o 參數(shù):
scihub-cn -d 10.1038/s41524-017-0032-0 -o D:\papers這將會(huì)把這篇論文下載到D盤的papers文件夾中。
2.2 根據(jù)關(guān)鍵詞下載論文
使用 -w 參數(shù)指定一個(gè)關(guān)鍵詞,可以通過關(guān)鍵詞下載論文:
scihub-cn -w reinforcement效果如下:

同樣滴,它也支持-o參數(shù)指定文件夾。此外,這里默認(rèn)使用的搜索引擎是百度學(xué)術(shù),你也可以使用Google學(xué)術(shù)、publons、science_direct等。通過指定 -e 參數(shù)即可:
scihub-cn -w reinforcement -e google_scholar為了避免Google學(xué)術(shù)無法連接,你還可以增加代理 -p 參數(shù):
scihub-cn -w reinforcement -e google_scholar -p http://127.0.0.1:10808
訪問外網(wǎng)數(shù)據(jù)源的時(shí)候,增加代理能避免出現(xiàn)Connection closed等問題。
此外,你還能限定下載的篇目, 比如我希望下載100篇文章:
scihub-cn -w reinforcement -l 1002.3 根據(jù)url下載論文
給定任意論文地址,可以讓scihub-cn嘗試去下載該論文:
scihub-cn -u https://ieeexplore.ieee.org/document/26502
使用 -u 參數(shù)指定論文鏈接即可,非常方便。
3.批量下載論文
當(dāng)然,之前花了幾篇文章優(yōu)化的批量下載模塊這個(gè)版本肯定少不了!
而且還增加了幾種新的批量下載方式:
1. 根據(jù)給出所有論文名稱的txt文本文件下載論文。
2. 根據(jù)給出所有論文url的txt文件下載論文。
3. 根據(jù)給出所有論文DOI號(hào)的txt文本文件下載論文。
4. 根據(jù)給出bibtex文件下載論文。
比如,根據(jù)給出所有論文URL的txt文件下載論文:
scihub-cn -i urls.txt --url
效果如下:

可以看到,文件內(nèi)有4個(gè)論文鏈接,而他也成功地下載到了這4篇論文。
再試試放了DOI號(hào)的txt文件的批量下載:
scihub-cn -i dois.txt --doi
效果如下:

你可以輸入 scihub-cn --help 看到更多的參數(shù)說明:
$scihub-cn --help
... ...
optional arguments:
??-h, --help show this help message and exit
??-u URL input the download url
??-d DOI input the download doi
??--input INPUTFILE, -i INPUTFILE
????????????????????????input download file
??-w WORDS, --words WORDS
????????????????????????download from some key words,keywords are linked by
????????????????????????_,like machine_learning.
??--title download from paper titles file
??-p PROXY, --proxy PROXY
????????????????????????use proxy to download papers
??--output OUTPUT, -o OUTPUT
????????????????????????setting output path
??--doi download paper from dois file
??--bib download papers from bibtex file
??--url download paper from url file
??-e SEARCH_ENGINE, --engine SEARCH_ENGINE
????????????????????????set the search engine
??-l LIMIT, --limit LIMIT
????????????????????????limit the number of search result大家如果有更多的想法,可以往我們這個(gè)開源項(xiàng)目貢獻(xiàn)代碼,我也非常希望能夠有更多人參與這個(gè)項(xiàng)目:
https://github.com/Ckend/scihub-cn
本文僅限參考研究,下載的論文請(qǐng)?jiān)?4小時(shí)內(nèi)閱讀后刪除,請(qǐng)勿將此項(xiàng)目用于商業(yè)目的。
我們的文章到此就結(jié)束啦,如果你喜歡今天的Python 實(shí)戰(zhàn)教程,請(qǐng)持續(xù)關(guān)注Python實(shí)用寶典。
有任何問題,可以在公眾號(hào)后臺(tái)回復(fù):加群,回答相應(yīng)紅字驗(yàn)證信息,進(jìn)入互助群詢問。
原創(chuàng)不易,希望你能在下面點(diǎn)個(gè)贊和在看支持我繼續(xù)創(chuàng)作,謝謝!
點(diǎn)擊下方閱讀原文可獲得更好的閱讀體驗(yàn)
Python實(shí)用寶典?(pythondict.com)
不只是一個(gè)寶典
歡迎關(guān)注公眾號(hào):Python實(shí)用寶典
