我正在寻找一种伪蜘蛛爬取网站的方法,关键是我实际上不需要内容,而只需要一个URI列表。我可以使用Wget和--spider
选项来接近这个想法,但当将输出通过grep
进行管道处理时,我似乎无法找到正确的方法让它工作:
wget --spider --force-html -r -l1 http://somesite.com | grep 'Saving to:'
grep
过滤器似乎对 wget
输出没有任何影响。我是弄错了还是应该尝试另一个更适合提供这种有限结果集的工具?
更新
所以我刚刚离线发现,wget
默认写入到 stderr。我在手册页中错过了这一点(事实上,如果它在那里的话,我仍然没有找到)。一旦我将返回内容导向 stdout,我就更接近我需要的结果了:
wget --spider --force-html -r -l1 http://somesite.com 2>&1 | grep 'Saving to:'
如果存在其他更好的方法来完成这种事情,我仍然很感兴趣。