使用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"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你不能。 wget 不支持这一点,所以如果你想要这样的东西,你必须自己编写一个工具。
您可以获取主文件,手动解析链接,然后逐一获取它们,限制为 100 个项目。但这不是 wget 支持的东西。
你也可以看看用于网站爬行的 HTTrack,它有很多额外的选项:http://www.httrack.com/。 httrack.com/
You can't. wget doesn't support this so if you want something like this, you would have to write a tool yourself.
You could fetch the main file, parse the links manually, and fetch them one by one with a limit of 100 items. But it's not something that wget supports.
You could take a look at HTTrack for website crawling too, it has quite a few extra options for this: http://www.httrack.com/
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}/(.*)$},打印$1
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