如题,比如我想将SF的这个问题页的纯文本(不包括html标签,就是我们直接看到的纯文本)提取出来,有啥子好方法?或者说有专门干这事的类库没有?
可能题主想要这样的:
或者是这样的:
Java可以用Jsoup实现:
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.7.3</version>
</dependency>
找一个解析html的库,比如说python有HTMLParser,sgmllib,htmllib
然后你解析一把它应该会变成一棵树,你就遍历一下找自己要的东西拿走
我只处理过xml不过应该差不多就是这么来的...
LZ 用js 来取可以么?
console.log(document.body.innerText)
innerHtml 所有节点和内容
innerText 所有非节点内容
我不会告诉你我用
html2text is a Python script that converts a page of HTML into clean, easy-to-read plain ASCII text. Better yet, that ASCII also happens to be valid Markdown (a text-to-HTML format).
Usage: html2text.py [(filename|url) [encoding]]
可以试试我做Hacker news digest时撸的正文提取库,目前看来效果非常好,hacker news上发的链接绝大部分都能提取出来。
https://github.com/polyrabbit/hacker-news-digest/tree/master/page_content_extractor
找个能模拟浏览器引擎的
然后
var html = document.getElementsByTagName('html')[0]
text = html.innerTEXT
这样的东西node_module有很多如: jsdom, cheerio
Python可以使用Beautiful Soup库的get_text()方法,可以获取一个标签以及其子孙标签内所有的文本的内容,
Beautiful Soup 4.2.0 文档