wget 指令学习之递归抓取文档技巧

mac2022-06-30  24

在线上阅读文档的时候,有没有想将它抓取到本地,以备没有网的时候阅读只需?

先上指令:

$ wget --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/53.0.2785.143 Chrome/53.0.2785.143 Safari/537.36" -p -np -k -r --wait=1 http://www.tornadoweb.org/en/stable/

你会看到如下的页面:

  

过段时间,就会抓取完成,并在本地生成了一个相关联的目录。

这个命令就是 wget。它是开发者在Linux下面非常喜欢使用的下载指令。经常,我们会看到一些技术文档在指导你下载安装包的时候,也会用到,比如: wget xxx.tar.gz 之类的。

我们可以通过 man wget 或 wget -h 来查阅 wget 的参数。下面挑出几个常用的参数介绍下。

HTTP 相关的: --http-user=USER        设置 http 用户名为 USER。 --http-password=PASS    设置 http 密码为 PASS。 --no-cache              不在服务器上缓存数据。 -U,  --user-agent=AGENT      标识为 AGENT 而不是 Wget/VERSION。       --no-http-keep-alive    禁用 HTTP keep-alive (永久连接)。       --no-cookies            不使用 cookies。       --load-cookies=FILE     会话开始前从 FILE 中载入 cookies。       --save-cookies=FILE     会话结束后保存 cookies 至 FILE。       --keep-session-cookies  载入并保存会话 (非永久) cookies。       --post-data=STRING      使用 POST 方式;把 STRING 作为数据发送。       --post-file=FILE        使用 POST 方式;发送 FILE 内容。       --content-disposition   当选中本地文件名时                               允许 Content-Disposition 头部 (尚在实验)。       --auth-no-challenge     发送不含服务器询问的首次等待                               的基本 HTTP 验证信息。下载相关的: -w,  --wait=SECONDS            等待间隔为 SECONDS 秒。       --waitretry=SECONDS       在获取文件的重试期间等待 1..SECONDS 秒。       --random-wait             获取多个文件时,每次随机等待间隔                                 0.5*WAIT...1.5*WAIT 秒。-O --output-document=FILE    将文档写入 FILE。 递归下载: -r,  --recursive          指定递归下载。 -p,  --page-requisites    下载所有用于显示 HTML 页面的图片之类的元素。 -k,  --convert-links      让下载得到的 HTML 或 CSS 中的链接指向本地文件。 -np, --no-parent          不追溯至父目录。原文网址 http://www.cnblogs.com/scharfsinnig/p/6707859.html 参考文档:http://linux.51yip.com/search/wget

转载于:https://www.cnblogs.com/scharfsinnig/p/6707859.html

最新回复(0)