我需要一个可以抓取网站的脚本,并以纯文本或类似格式返回所有已抓取页面的列表;我将提交给搜索引擎作为站点地图。我可以使用WGET生成网站的站点地图吗?或者是否有可以执行相同操作的PHP脚本?
答案 0 :(得分:31)
wget --spider --recursive --no-verbose --output-file=wgetlog.txt http://somewebsite.com
sed -n "s@.\+ URL:\([^ ]\+\) .\+@\1@p" wgetlog.txt | sed "s@&@\&@" > sedlog.txt
这会创建一个名为sedlog.txt
的文件,其中包含指定网站上找到的所有链接。您可以使用PHP或shell脚本将文本文件站点地图转换为XML站点地图。调整wget命令的参数(接受/拒绝/包含/排除)以仅获取所需的链接。
答案 1 :(得分:1)
您可以使用此perl脚本来执行此操作:http://code.google.com/p/perlsitemapgenerator/