在Groovy中,如何抓取网页并删除HTML标签等,只留下文档的文本?我希望将结果转储到一个集合中,这样我就可以构建一个单词频率计数器。
最后,让我再次提到我想在Groovy中这样做。
答案 0 :(得分:2)
假设您希望使用Groovy(基于groovy标记进行猜测),您的方法很可能是面向shell脚本或使用Java库。在shell脚本的情况下我会同意moogs,使用Lynx或Elinks可能是最简单的方法。否则,请查看HTMLParser并查看Processing Every Word in a File(向下滚动以查找相关代码段)
你可能不习惯找到用于HTML解析的Groovy的Java库,因为它似乎没有任何Groovy库。如果你没有使用Groovy,那么请发布所需的语言,因为那里有很多HTML to text tools,具体取决于你正在使用的语言。
答案 1 :(得分:1)
如果你想从HTML中获取一组标记化的单词,那么你不能像XML一样解析它(需要是有效的XML)并获取标签之间的所有文本吗?这样的事情怎么样:
def records = new XmlSlurper().parseText(YOURHTMLSTRING)
def allNodes = records.depthFirst().collect{ it }
def list = []
allNodes.each {
it.text().tokenize().each {
list << it
}
}
答案 2 :(得分:0)
您可以使用Lynx Web Browser吐出文档文本并保存。
您想自动执行此操作吗?你想要一个单独的应用程序吗?或者您是否希望将帮助编码到您的应用程序中?将运行哪些平台(Windows桌面,Web服务器等)?