使用wget抓取网站并限制已抓取链接的总数

时间:2011-02-11 19:25:43

标签: bash scripting web-crawler wget

我想通过玩wget工具来了解有关爬虫的更多信息。我有兴趣抓取我部门的网站,找到该网站上的前100个链接。到目前为止,下面的命令就是我所拥有的。如何在100个链接后限制抓取工具停止?

wget -r -o output.txt -l 0 -t 1 --spider -w 5 -A html -e robots=on "http://www.example.com"

2 个答案:

答案 0 :(得分:2)

你做不到。 wget不支持这个,所以如果你想要这样的东西,你必须自己编写一个工具。

您可以获取主文件,手动解析链接,并逐个获取,限制为100个项目。但它不是wget支持的东西。

你也可以看看HTTrack的网站抓取情况,它有很多额外的选项:http://www.httrack.com/

答案 1 :(得分:0)

  1. 创建一个fifo文件(mknod / tmp / httpipe p)
  2. 做一个叉子
      在孩子的
    • wget --spider -r -l 1 http://myurl --output-file /tmp/httppipe
    • 父亲中的
    • :逐行阅读/tmp/httpipe
    • 解析输出=~ m{^\-\-\d\d:\d\d:\d\d\-\- http://$self->{http_server}:$self->{tcport}/(.*)$}, print $1
    • 计算线条;在100行之后关闭文件,它将破坏管道