我想解析Groovy中的一个网页,并提取所有的href链接和相关的文本.
<a href="http://www.google.com">Google</a><br /> <a href="http://www.apple.com">Apple</a>
输出将是:
Google,http://www.google.com<br /> Apple,http://www.apple.com
我正在寻找一个Groovy的答案. AKA.简单的方法!
解决方法
假设格式良好的XHTML,slurp xml,收集所有标签,找到’a’标签,并打印出href和文本.
input = """<html><body> <a href = "http://www.hjsoft.com/">John</a> <a href = "http://www.google.com/">Google</a> <a href = "http://www.stackoverflow.com/">StackOverflow</a> </body></html>""" doc = new XmlSlurper().parseText(input) doc.depthFirst().collect { it }.findAll { it.name() == "a" }.each { println "${it.text()},${it.@href.text()}" }