本质上,我想用 Wget 抓取整个网站,但我需要它永远不要下载其他资产(例如图像、CSS、JS 等)。我只想要 HTML 文件。
谷歌搜索完全没用。
这是我尝试过的命令:
wget --limit-rate=200k --no-clobber --convert-links --random-wait -r -E -e robots=off -U "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.102 Safari/537.36" -A html --domain=www.example.com http://www.example.com
Run Code Online (Sandbox Code Playgroud)
我们的网站是混合 flat-PHP 和 CMS。所以,HTML “文件”可能是/path/to/page,/path/to/page/,/path/to/page.php,或/path/to/page.html。
我什至包括-R js,css但它仍然下载文件,然后拒绝它们(带宽、CPU 和服务器负载的无意义浪费!)。
Nat*_*.B. 16
@ernie 关于--ignore-tags引导我走上正确道路的评论!当我抬起头--ignore-tags的man,我注意到了--follow-tags。
设置--follow-tags=a让我跳过img,link,script,等。
对于某些寻找相同答案的人来说,它可能太有限了,但它实际上对我来说效果很好(如果我错过了几页也没关系)。
如果有人找到允许扫描所有标签的方法,但防止wget仅在下载文件后拒绝文件(他们应该在下载前根据文件名或标题内容类型拒绝),我将非常乐意接受他们的回答!
添加选项怎么样:
--reject '*.js,*.css,*.ico,*.txt,*.gif,*.jpg,*.jpeg,*.png,*.mp3,*.pdf,*.tgz,*.flv,*.avi,*.mpeg,*.iso'
--ignore-tags=img,link,script
--header="Accept: text/html"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13490 次 |
| 最近记录: |