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 ...
随机推荐
- [javase学习笔记]-6.4 成员变量与局部变量
前面我们学习了类的定义,我们不难理解,定义类事实上就是在定义类中的成员. 成员包含成员变量和成员函数. 说到成员变量,我们非常自然会想到前面提到过的局部变量,那么它们之间有什么差别呢? 首先我们定义一 ...
- Android性能优化系列之App启动优化
Android性能优化系列之布局优化 Android性能优化系列之内存优化 Android性能优化系列之apk瘦身 应用的启动速度缓慢是我们在开发过程中常常会遇到的问题,比方启动缓慢导致的黑屏.白屏问 ...
- 什么是哈希码(HashCode)
什么是哈希码(HashCode) 在Java中,哈希码代表对象的特征. 例如对象 String str1 = “aa”, str1.hashCode= 3104 String str2 = “bb”, ...
- 【Python】使用内置base64模块进行编解码
代码: import hashlib import base64 hash = hashlib.md5() hash.update('逆火Tu22m'.encode('utf-8')) print(h ...
- 【Lua】LuaForWindows_v5.1.4-46安装失败解决方案
下个补丁vcredist_x86.exe 可以到下面连接下载: https://download.csdn.net/download/tvcctv27tv/10344318
- ShopEx customSchema 定制能够依据客户的需求对站点进行对应功能的加入改动或者删除
站内锚文本制作 1.改动config.php,在文件末尾添加下面内容 define('CUSTOM_CORE_DIR',BASE_DIR . '/custom'); 2.添加custom目录(与cor ...
- Office 如何添加Adobe Acrobat虚拟PDF打印机
在服务中找到Print Spooler服务,如果是停止的点击启动,如果已经启动点击重新启动 在打印机中添加本地打印机 使用现有端口,然后选择Adobe PDF选项,下一步,然后在厂商中选择Ad ...
- 电脑技巧 如何保存网页为PDF
安装Adobe Acrobat X pro(要安装版本,不要绿色版),完成之后再打印机里面可以看到添加了新的Adobe PDF打印机 对于任意的Office文档,都可以直接打印到PDF得到PDF文 ...
- 轻松python文本专题-字符与字符值转换
场景: 将字符转换成ascii或者unicode编码 在转换过程中,注意使用ord和chr方法 >>> print(ord('a')) 97 >>> print(c ...
- 【转】Java设计模式之《享元模式》及应用场景
享元模式:“享”就是分享之意,指一物被众人共享,而这也正是该模式的终旨所在. 享元模式有点类似于单例模式,都是只生成一个对象来被共享使用.这里有个问题,那就是对共享对象的修改,为了避免出现这种情况,我 ...