我正在尝试运行使用我的sitemap.xml的网站抓取工具 我已经在magento上运行了清漆,我想在清理它之后预热缓存。
我正在使用turpentine's warm cache script,但由于某种原因,它会获得0个网址。
我的xml是here
我已经对它进行了一些研究,我无法想出一个bash脚本来获取我的xml中的url ..不幸的是我不是linux大师。 你能帮我提一些技巧/文档链接吗?任何帮助将非常感激, 谢谢。
稍后编辑:
当我运行warm-cache.sh时,我得到了
Getting URLs from sitemap...
Warming 0 URLs using 4 processes...
我还找到了一个很好的抓取脚本:
wget -O - easyfarm.ro/sitemap.xml | grep -E -o '<loc>.*</loc>' | sed -e 's/<loc>//g' -e 's/<\/loc>//g' | wget -i - -p -r -leve=2 --delete-after
然而,它也没有访问任何网址,我得到:
--2013-11-19 16:53:16-- http://easyfarm.ro/sitemap.xml
Resolving easyfarm.ro (easyfarm.ro)... 188.240.47.148
Connecting to easyfarm.ro (easyfarm.ro)|188.240.47.148|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/xml]
Saving to: `STDOUT'
[ <=> ] 7,703 --.-K/s in 0s
2013-11-19 16:53:17 (883 MB/s) - written to stdout [7703]
答案 0 :(得分:3)
确保已安装xpath
并可供脚本使用。
更一般地说,确保脚本中调用的每个命令都可用 - xpath
,curl
,sed
,grep
,cat
,{{1 },xargs
,siege
。其中一些在大多数系统上都是默认可用的,有些则不是。
安装程序因每个分发而异。例如,在Ubuntu Linux中,您可以使用rm
获取apt-get install libxml-xpath-perl
。
答案 1 :(得分:0)
我们遇到了松节油变暖的问题所以写了我们自己的bash脚本。 它首先使用wget来获取url列表。 然后它使用卷曲来加热你正在运行的许多清漆缓存。
https://gist.github.com/jaseclamp/27c4b74e535ddd749bbe
如果您正在使用它,那里还有用于清除mod pagespeed的代码。 如果不适用可以评论。