IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

其实你不懂wget的心-02

linux大棚-roclinux.cn 2011-02-11 22:49:04 累计浏览 3,761 次
本机暂存

    上次提到了wget可以避免robots.txt的事情。这篇文章就做个试验,让大家亲身体验。跟着我的思路来走。

    1 我们搭建了一个临时的apache-1.3.41服务器,端口号设置成了61212。网页文件所在路径为/home/rocrocket/program/apache-1.3.41-all/htdocs,我们简称为htdocs目录。

    2 在htdocs目录中,我们建立一个index.html文件,内容大致如下:

    $ cat -n index.html

以下是引用片段:
1  <html>
2          <head>
3                  <title>rocrocket</title>
4          </head>
5          <body>
6                  <ul>
7                          <li><a href=rocrocket-1.html>rocrocket-1</li>
8                          <li><a href=rocrocket-2.html>rocrocket-2</li>
9                  </ul>
10          </body>
11  </html>

    通过网页方式访问的话,效果是这样的:

    wget-html

    3 类似的建立如下文件:

$ ls -1
index.html
robots.txt
roc.html
rocrocket-1-1.html
rocrocket-1-2.html
rocrocket-1.html
rocrocket-2-1.html
rocrocket-2-2.html
rocrocket-2.html

    根据文件编号,你应该能看出他们之间的调用关系。

    4 建立简单的robots.txt文件:

$ cat robots.txt
User-agent: *
Disallow: rocrocket-2.html

    这个文件的内容就是要屏蔽rocrocket-2文件的下载和spider。

    5 我们用wget来下载这个测试站点:

wget -r http://my-test.cn:61212/

$ ls -1
index.html
robots.txt
rocrocket-1-1.html
rocrocket-1-2.html
rocrocket-1.html

    看!下载到的包含了robots.txt文件,但没有包含rocrocket-2及其相关的文件。

    可见,robots.txt生效了,wget遵守了robots.txt的规则!

    6 我如何突破robots.txt的限制呢?

    使用-execute选项就可以,这个选项的作用是将其后的参数模拟“放到.wgetrc中的执行效果”。

$ wget -r --execute robots=off http://jx-nsop-test0.jx:61212/

$ ls -1
index.html
rocrocket-1-1.html
rocrocket-1-2.html
rocrocket-1.html
rocrocket-2-1.html
rocrocket-2-2.html
rocrocket-2.html

    看,rocrocket-2系列的文件也都顺利的下载下来了:D

同分类推荐文章

  1. 从零重建 macOS 开发机:可复现的环境初始化流程 (2026-06-14 20:36:00)
  2. 百度物理网络监控工具开源第二弹:毫秒级监控工具 baize,让你的网络问题无处遁形 (2026-06-11 08:10:28)
  3. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)

查看更多 DevOps 文章 →

建议继续学习

  1. Bash的模式和配置文件加载 (累计阅读 24,406)
  2. 28个Unix/Linux的命令行神器 (累计阅读 16,790)
  3. Linux如何统计进程的CPU利用率 (累计阅读 16,307)
  4. 我的 RHCA 之路 (累计阅读 14,011)
  5. 我常用的主机监控shell脚本 (累计阅读 13,429)
  6. Linux内存点滴 用户进程内存空间 (累计阅读 13,228)
  7. 给程序员新手的一些建议 (累计阅读 13,088)
  8. Linux 性能监控、测试、优化工具 (累计阅读 13,011)
  9. 关于linux内存free的一些事情 (累计阅读 12,866)
  10. ps - 按进程消耗内存多少排序 (累计阅读 12,685)