QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

雅虎开源语义数据 Web 爬虫:Anthelion

  • 2015-12-25
  • 本文字数:1096 字

    阅读完需:约 4 分钟

整个 Web 世界正在发生剧烈的转变,包含语义注解的 Web 页面让数据的提取和重用变得越来越容易,而为了提供更好的用户体验搜索引擎和社交媒体网站对这种数据的使用也越来越多。要获取这些数据离不开网络爬虫的支持,为此,Yahoo 创建了 Anthelion 项目,一个旨在爬取语义数据的 Nutch 插件,最近,该项目已在 GitHub 上开源

Anthelion 是为了更好地爬取嵌在 HTML 页面中的结构化数据而设计的,它采用了一种全新的方法来爬取含有丰富数据的页面上的内容:将线上学习和 Bandit 探索方法有效地结合起来,根据页面上下文以及从之前页面提取到的元数据反馈预测 Web 页面的数据丰富程度。 这种方法明显优于主题爬取(Focused Crawling)目前所采用的其他技术,极大地提升了爬取效率。

整个数据爬取的流程如下:

正如上面的流程图所展示的,为了执行主题爬取,该插件实现了三个扩展:

  1. AnthelionScoringFilter(实现了 ScoringFilter 接口):在线分类器,它对每一个外链打分,同时将新发现的外链分为相关的和不相关的两类。
  2. WdcParser(实现了 Parser 接口):解析 Web 页面内容并提取语义数据。该扩展基于 any23 类库实现,能够从 HTML 中提取 Microdata、Microformats 和 RDFa 注解。
  3. TripleExtractor(实现了 IndexingFilter 接口):将新域存储到索引中供之后的查询使用。

对于想亲身感受 Anthelion 的用户而言,直接从GitHub 上下载整个项目包或许是一个不错的选择,因为它包含了完整的Nutch 1.6 代码和相关插件,不需要任何修改和设置就能运行。如果只想下载插件,那么需要从文件的根目录下下载 nutch-anth.zip 并进行相关的设置。

在构建好项目之后,导航到\target 文件夹,执行 CCFakeCrawler 类的 main 函数就能启动爬虫,例如:

java -Xmx15G -cp ant.jar com.yahoo.research.robme.anthelion.simulation.CCFakeCrawler [indexfile] [networkfile] [labelfile] [propertiesfile] [resultlogfile]其中,indexfile 是 ID 和 URL 之间的映射文件,networkfile 是索引中 ID 的图,labelfile 是满足目标函数的 ID 列表,propertiesfile 是配置文件,resultlogfile 存储性能和爬取流程信息。

Anthelion 支持 init、start、stop 和 exit 操作,在爬取的过程中,用户还可以通过 status 命令查看爬取进程的状态。另外,对于 Anthelion 爬取数据的精确度 Yahoo 也进行了评测,结果如下:


感谢魏星对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-25 18:004377
用户头像

发布了 321 篇内容, 共 121.0 次阅读, 收获喜欢 19 次。

关注

评论

发布
暂无评论
发现更多内容

感恩有你|恭喜 OpenTiny Vue 开源组件库喜迎1000+star!!!

OpenTiny社区

开源 前端 UI组件库

流量为王时代,华为云耀云服务器L实例让网站建设不焦虑

轶天下事

5. IM系统

Joy

独家丨小程序开发支出明细,快Get华为云低成本高效率开发秘诀!

平平无奇爱好科技

商场如战场!华为云助力企业打赢云服务器之战

平平无奇爱好科技

企业建站服务器选“懵逼”了?照着华为云的思路买准没错!

平平无奇爱好科技

6. 账号系统

Joy

FFA 2023 「流式湖仓」专场:从技术原理到应用实践打造流式湖仓新架构

Apache Flink

大数据 flink 实时计算

大量索引场景下 Easysearch 和 Elasticsearch 的吞吐量差异

极限实验室

数据库 搜索引擎 elasticsearch 吞吐量 easysearch

超强新品叠加价格特惠,华为云助力小程序开发红海“掘金”

轶天下事

老板抱怨网站投入没效果?掌握这份运营秘诀效果直接起飞

轶天下事

拒绝成为“时代的眼泪”,华为云这款服务器赋能企业高效转型

轶天下事

小程序创业是伪命题?华为云耀云服务器L实例铺开初创企业发展新蓝图

平平无奇爱好科技

“云”端赛马 “算”出未来丨华为云轻量应用服务器助力企业换道超车

平平无奇爱好科技

遥遥领先!TinyEngine 低代码引擎更新升级!

OpenTiny社区

开源 前端 低代码

SQL 中的运算符与别名:使用示例和语法详解

小万哥

MySQL 数据库 程序员 sql 后端开发

跨境电商独立站太烧钱?中小企业老板快收藏华为云这份省钱秘笈

轶天下事

让小程序开发稳步快跑,这款轻量应用服务器凭实力说话

轶天下事

快速从入门到精通,华为云耀云服务器L实例让小程序开发更简单

平平无奇爱好科技

阿里云太“氪金”?试试华为云超高性价比轻量应用服务器

平平无奇爱好科技

真香定律再现!中小企业数字化逃不过华为云轻量应用服务器

平平无奇爱好科技

FFA 2023 「行业实践」专场: 金融/电力/汽车/互联网等多行业最佳实践

Apache Flink

flink

1. 商品CPV模型

Joy

2. 商品那些模型

Joy

服务器的操作系统有哪些?

Geek_f19a80

服务器

钱少事少效率高,华为云这款轻量应用服务器真乃职场神器

轶天下事

3. 跨境卖全球框架

Joy

WorkPlus即时通讯软件,以自主安全为底座,连接工作的一切

BeeWorks

LED面板显示屏驱动芯片

芯动大师

4. 爬虫系统

Joy

爬虫实战

7. 电商全球化架构

Joy

雅虎开源语义数据Web爬虫:Anthelion_语言 & 开发_孙镜涛_InfoQ精选文章