lysdexia..
5
我来到这里寻找一种从网站上获取价值的好方法.以下示例可能对那些具有支持--xpath的xmllint版本的人(与海报不同)有用.
我需要提取elasticsearch .deb文件的最新稳定版本并安装它.维护者已经将版本号放在带有"版本"类的范围内.
version=`curl -s http://www.elasticsearch.org/download/ |\
xmllint --html --xpath '//span[@class="version"]/text()'\
2>/dev/null - `;
怎么回事:
我们使用curl -s(silent)选项.
curl -s http://www.elasticsearch.org/download/
我们使用xmllint --html和--xpath开关.xpath参数(单引号)
'//span[@class="version"]/text()'
...查找具有class属性(@class)"version"的节点,并提取文本值(/ text()).
由于xmllint(惊喜!)是一个linter,它会在你的html流中发出不可避免的垃圾.我们以通常的方式将stderr指向/ dev/null:
2>/dev/null
最后,请注意xmllint命令末尾的" - ",它告诉xmllint流来自stdin.
KARTHIK.V,这对你来说不是一个好的答案,但你的问题是有名的,所以它在谷歌搜索中相当高.我想我会为像我这样寻找快速答案并拥有不同工具的人添加这个. (3认同)