Redability
在写爬虫进行舆情分析、情感分析等内容时,我们经常爬取博客、新闻等长篇大论的文章,在一个网页上,根据网页布局,人眼可以很明确的确定哪些元素是文章主体。人眼既然能够识别,那么机器必然也是能够识别的。如果给定一片HTML文档,机器学习返回文章主体所在的元素,那样在写爬虫时就可以避免F12打开控制台查看元素名称了。
从网页中提取出主要内容,一直是一个比较有挑战的算法。Readability是其中一个很不错的实现。Readability之前是开源的,后来不再公开了。
Readability通过遍历Dom对象,通过标签和常用文字的加减权,来重新整合出页面的内容。
Readability也是一款chrome插件,可以提取网页正文发送到手机,这样就可以空闲时在移动端详细阅读正文。
python:https://github.com/timbertson/python-readability
java:https://github.com/chimbori/crux
nodejs版本:https://github.com/luin/readability
php 版本:https://github.com/feelinglucky/php-readability
JS版本:https://github.com/mozilla/readability
Swift版本:https://github.com/exyte/ReadabilityKit
Ruby版本:https://github.com/cantino/ruby-readability
参考资料
https://www.biaodianfu.com/about
Redability的更多相关文章
- SQL Fundamentals: Basic SELECT statement基本的select语句(控制操作的现实列)(FROM-SELECT)
SQL Fundamentals || Oracle SQL语言 Capabilities of the SELECT Statement(SELECT语句的功能) Data retrieval fr ...
随机推荐
- python3 杀死进程
在windows10杀死进程:Shadowsocks.exe os.system('taskkill /f /im %s' % 'Shadowsocks.exe')
- Node.js中针对中文的查找和替换无效的解决方法
Node.js中针对中文的查找和替换无效的解决方法. //tags的值: tag,测试,帖子 var pos1 = tags.indexOf("测"); //这里返回-1 ta ...
- 定制加载loading 图片
项目中要使用一个动态加载图片,找了好久都没有合适的最后发现了这个网站,自由定制需要的gif图片,完全免费啊 http://preloaders.net/en/
- php tools 破解
default.aspx <%@ Page Language="C#" %><% string selfKey = "<RSAKeyValue&g ...
- 从网易云音乐网页版无登陆下载MP3的办法
用chrome浏览器就能办到 现在,你还为下载不到满意的音乐而苦恼吗?
- 放入MP3的文件夹显示一些没用的标题,艺术家,唱片集怎么办?
原来的文件大小,类型,修改日期,创建日线都没了,怎么办? 右键点击名称,标题,艺术家那一行,在右键菜单中,去掉没用的,勾选有用的,如下图:
- Wifidog协议V1
Wifidog网关协议V1 网关心跳(Ping协议) Wifidog将ping协议作为心跳机制向认证服务器发送当前状态信息.这可以实现为认证服务器每个节点的状态生成中央日志. Wifidog客户端在c ...
- Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
在之前的<跟我学SpringMVC>中的<第七章 注解式控制器的数据验证.类型转换及格式化>中已经介绍过SpringMVC集成Bean Validation 1.0(JSR-3 ...
- Linux网络编程:基于TCP的程序开发回顾篇《转》
面向连接的TCP程序设计 基于TCP的程序开发分为服务器端和客户端两部分,常见的核心步骤和流程: 其实按照上面这个流程调用系统API确实可以完全实现应用层程序的开发,一点问题没有.可随着时间的推移,你 ...
- android中使用通知功能
本文实现一个功能:点击一个按钮,发送一个系统通知功能 添加一个Activity activity_main.xml: <?xml version="1.0" encoding ...