如何使用wget从sci-hub链接下载pdf

用户名

实际上,我最初是在堆栈溢出时发布此消息的,但是,我立即获得了密切的投票。所以我在这里尝试了。


http://sci-hub.cc/是一个旨在在世界范围内自由共享学术论文的网站。

例如我想下载这篇论文

http://journals.aps.org/rmp/abstract/10.1103/RevModPhys.47.331

我可以在浏览器中直接输入该网址

http://journals.aps.org.sci-hub.cc/rmp/abstract/10.1103/RevModPhys.47.331

然后过一会儿,浏览器中会打开一个pdf文件(如果您安装了pdf插件),或者弹出一个下载窗口,要求下载pdf文件。在这两种情况下,真正的pdf链接如下所示

http://tree.sci-hub.cc/772ec2152937ec0969aa3aeff8db0b8f/leggett1975.pdf

但是,正如我测试过的那样,真正的pdf链接每次都是随机的,我无法事先知道它,直到浏览器获得它为止

现在,我更喜欢使用wget下载论文。当然可以,直接下载

wget http://journals.aps.org.sci-hub.cc/rmp/abstract/10.1103/RevModPhys.47.331

不管用。但是我们可以使用“抓取”功能,该功能通常用于下载网站,以将该链接下的内容抓取到http://journals.aps.org.sci-hub.cc/rmp/abstract/10.1103/RevModPhys.47.331但是我尝试了类似的递归选项--mirror,但也失败了。

另一方面,我尝试在“ Internet下载管理器”中使用“抓取”功能,该功能可以正确获取实际的pdf链接,如下所示

在此处输入图片说明

我认为IDM中的抓取功能与wget相同,也许wget比IDM更强大。那为什么wget --mirror不能获得真正的pdf文件呢?在这种情况下如何正确使用wget?

来宾虚拟机
link = 
http://journals.aps.org.sci-hub.cc/rmp/abstract/10.1103/RevModPhys.47.331#

使用grep wget提取pdf链接$ link -qO-| grep -Eom1'http:// [^] + \。pdf'| wget -qi- 

#使用内置爬网(请参阅手册
wget -rHA'* .pdf'- e robots = off $ link

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章