如何批量下载文件?

2017-11-15 08:01:26 +08:00
 billgreen1
我用 google 搜索时,经常能搜索到一些网站上的 PDF 文件,一般像这样的 url http://www.example.com/aaa/b1/c1/1.pdf
http://www.example.com/aaa/b2/c3/1.pdf

这时候我一般喜欢用 site:example.com inurl:aaa 来获取这个网站的 pdf,这时候只能手动点击网页链接下载。


直接浏览器访问 http://www.example.com/aaa/b2/c3 这样是访问不了的

我想有没有比较好的方式去下载这所有的
7679 次点击
所在节点    Python
16 条回复
XiaoFaye
2017-11-15 08:12:50 +08:00
好像有批量下载文件的浏览器插件,你找找看。
rocksolid
2017-11-15 08:30:42 +08:00
迅雷之类不是可以直接全部下载么
YTS
2017-11-15 08:34:44 +08:00
如果你能说一下如何用的谷歌搜索就最好了。。。
ws1689371
2017-11-15 08:35:00 +08:00
迅雷这些软件都有批量下载,你反正名称都知道了
master13
2017-11-15 08:38:58 +08:00
迅雷有格式化 URL 批量下载的功能,但是这个功能不支持携带 cookie,导致部分网站不能用
M3ng
2017-11-15 08:39:41 +08:00
filetype:pdf
下载可以用 down them all 之类的浏览器插件,检测网页上的所有资源链接并按要求过滤下载。
billgreen1
2017-11-15 09:18:32 +08:00
@YTS 额,我以为我说清楚了,不过可能还是没说清楚。你用 Google 搜索 site:hysec.com inurl:tsnr 这个试试。

@XiaoFaye @M3ng @rocksolid @ws1689371 @master13 我刚用了 Firefox 插件 downthemall 试了一下,确实可以下载,已经比一个一个点击下载方便多了。 但是翻页还是得自己去翻页,我自己目前在考虑怎么用 selenium+phantomjs,看能否下载所有的。

这个方法不好的地方在于:有些 pdf google 不一定检索到, 要是能直接下载目录就好了。
lrxiao
2017-11-15 09:28:07 +08:00
https://gist.github.com/Airtnp/f6d4ce2ee116dab9ffdfbd3f11c3e762

以前写过一个玩具。。。用法就是
python PDF_downloader.py url folder [如果文件不用 url/...格式]
lrxiao
2017-11-15 09:28:42 +08:00
最后一个参数就是如果换个 base url。。
Seymer
2017-11-15 09:37:55 +08:00
你是说这样么?

wget -r -A pdf,pptx,txt https://www.example.com/aaa/b1/c1/
sucaihuo
2017-11-15 09:42:28 +08:00
迅雷,有规则
nuansediao
2017-11-15 10:00:19 +08:00
@billgreen1 翻页除了一页显示 100 个,好像也没有其他更好的办法吧。
lrxiao
2017-11-15 10:01:55 +08:00
我觉得 lz 是想扫人家网站上的 archive..
billgreen1
2017-11-15 10:09:34 +08:00
额,是的,有些网站是可以进到目录里面的,但是有些不是,不能直接访问目录
Norie
2017-11-15 10:12:37 +08:00
Internet Downloader ?
ZxBing0066
2017-11-15 10:33:08 +08:00
chrome 按 F12 打开控制台 然后输入
```js
function downloadFile(url) {
const aLink = document.createElement('a');
aLink.download = '';
aLink.href = url;
aLink.click();
}
document.querySelectorAll('cite').forEach(d => downloadFile(`http://${d.innerText}`))
```
回车下载当前页面的内容

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/406467

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX