当前位置:
文档之家› 面向垂直搜索的聚焦爬虫研究及应用精品PPT课件
面向垂直搜索的聚焦爬虫研究及应用精品PPT课件
网页解析Web-Harvest
• 自身脚本解释与执行引擎、内嵌 BeanShell、JavaScript和Groovy等引擎
• 支持XPath、XQuery和正则表达式等多 种文本处理技术
• 可视的控制调试程序
Web-Harvest执行脚本
起始URL Http
HTML内容 Http-to-Xml XML内容
应用技术研究
网络爬虫Heritrix
Heritrix
ToeThread BdbFrontier
CrawlController
● CrawOrder ● CrawlScope ● Frontier ● ToePool ● ProcessorChainList
● BdbMultipleWorkQueues ● BdbWorkQueue ● BdbUriUniqFilter
• 基于网页内容的分析算法
从最初的文本检索方法,向涉及网页数据抽取、机器学 习、数据挖掘、自然语言等多领域综合的方向发展。
• 基于用户访问行为的分析算法
有代表性的是基于领域概念的分析算法,涉及本体论。
发展趋势
• 网页库级层次垂直搜索 • 智能化的数据分析和挖掘方向 • 自动化地结构化数据信息抽取技术
Spider_task
Async
Index Builder
Spider Task
Index dist
spider
spider
spider
Internet
search
search
search
搜索引擎分类
• 通用全文搜索
特点:特点:“专、精、深”,行业化 例:Healthline、Kooxoo、Koubei
• 针对目标网页上的结构化数据
对应模板级垂直搜索,直接解析页面,提取并 加工出结构化数据信息。快速实施、成本低、 灵活性强,但后期维护成本高。
URL的搜索策略
• IP地址或域名搜索策略
搜索全面,不受多站点交错引用URL的干扰,但不适合 多域名、分布式的大规模搜索。
• 广度优先搜索策略
类似先进先出的队列方式,逐层深入搜索。适合级数少 的目标站点,但对于信息量大、层次结构深的目标站点 ,难以深入执行 。
Xquery Loop
XML内容 Xpath
XML文档 File
Ver-def 保存在context
Web-Harvest设计分析
• 外部执行入口Scraper • 脚本运行的上下文环境ScraperContext • 执行脚本 • 脚本引擎 • GUI组件
面向垂直搜索的聚焦爬虫 研究及应用
OUTLINE
• 背景 • 研究综述 • 应用技术研究 • 招聘搜索聚焦爬虫设计与实现
背景
搜索引擎
Step i Step i Step i
Async
Domain Spec/Rule
Async
HARVEST
Async
Queue/store Process Text
预测候选链接与目标网页的相似度或主题相关 性,对预测认为“有用”的链接进行搜索。优 点在分析策略有效的前提下,搜索效率非常高 ;缺点是难以避免会遗漏一些链接。
网页的分析及信息的提取
• 基于网络拓扑关系的分析算法
根据页面间超链接引用关系,来对与已知网页有直接或 间接关系对象作出评价的算法。网页粒度PageRank , 网站粒度 SiteRank。
• 从被抓取网页中提取结构化数据和元数据 信息
基础核心工作环节:网页抓取和信息提取。
关键技术分析
• 抓取目标的定义与描述 • 网页URL的搜索策略 • 网页的分析与信息的提取
抓取目标的定义与描述
• 针对有目标网页特征的网页级信息
对应网页库级垂直搜索,抓取目标网页,后续 还要从中抽取出需要的结构化信息。稳定性和 数量上占优,但成本高、性活性差。
• 深度优先搜索策略
类似先进后出的队列方式。比较适合搜索深层次页面嵌 套的目标站点,还能发现最大数目的交叉引用,但是容 易导致爬虫的陷入 。
URL的搜索策略
• 深度与广度综合的搜索策略
逐步向下延伸,同时往广度方向遍历。虽然这 种搜索方法综合平衡,但是容易造成重复搜索 ,降低效率且加重网络负担。
• 最佳优量与性能之间难以兼顾,倾向于 网络覆盖与响应速度
• 搜索意图不明,基于关键字检索, 结果含有大量干扰信息
• 缺乏行业化的特征分析,无法实现 提供个性化服务
垂直搜索
• 服务于局部专业领域的精确搜索 • 用户难以描述他要找什么,除非让
他看到想找的东西 • 注重专业化与结构分析 • 数据倾向于结构化和格式化
PreProcessor Fetcher Extractor Writer
PostProcessor
Heritrix组件分析
• 中央控制器CrawlController • 抓取范围策略组件CrawlScope • 链接制造器Frontier • 多线程处理 ToePool 、ToeThread • 处理器Processor和处理器链 • 抓取任务CrawOrder • Web控制台程序
垂直搜索的本质
• 从主题相关的领域内,获取、加工 与搜索行为相匹配的结构化数据和 元数据信息。
如数码产品mp3:内存、尺寸、大小、电池型 号、价格、生产厂家等,还可以提供比价服务
网络爬虫
• 因沿超链接 “爬行”的工作方式, 被称为爬虫或蜘蛛
• 基于超链接与图的遍历算法,自动 从网络下载Web信息的程序
• 通常用来为搜索引擎提供数据源
面向垂直搜索的聚焦爬虫
• 将定向或非定向的网页抓取下来并 进行分析后得到格式化数据的技术
• 服务于垂直搜索,目标获取与主题 相关的结构化数据和元数据信息
研究综述
工作原理与流程
• 以一定的网页分析算法,提取与主题相关 的超链接,加入待抓取队列
• 根据一定的搜索策略,从待抓取链接队列 中选择下一步抓取链接,并重复上述过程 ,直到满足某一条件停止
Heritrix扩展定制
• 定制自己的Exractor处理器 • 扩展PostProcessor中的FrontierScheduler • 定制链接制造器BdbFrontier的URL散列
算法
继承QueueAssignmentPolicy, 选择ELFHash
• CrawlScope和robots.txt对个别Processor 的影响