Skip to content

KeywordWonderer项目中使用的网页解析器,用于解析出网页中的链接目标和图片地址。使用Ruby开发,使用nokogiri做网页内容解析。

Notifications You must be signed in to change notification settings

hxcan/keywordwonderer_links_extractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

KeywordWonderer里的链接解析器

这是KeywordWonderer里的一个组件,使用Ruby实现的网页链接解析器。

KeywordWonderer,关键字漫游者,是从一个桌面浏览器项目派生出来的试验项目,用于尝试收集互联网上包含指定关键字的网页。原始目标并未达到,因为此种模式需要大量机器才能达到合理的效率。目前,它是一个无实际负载的爬虫,会以一个带界面浏览器的形式访问任务列表中的各个网站,跟随着各个网站之间的链接进行跳转,并且将网页里引用的图片及链接所指向的文件下载下来。在运行过程中曾经漫游并下载到多个完整的电影视频文件。这个下载功能可通过设置来关闭,使得它只是单纯地在网站间爬行,并展示网页。

带界面的浏览器进程,是使用C++ QT5开发的。在解析网页内容这个具体任务上,选择了功能强大的Nokogiri来实现,因而网页解析进程是使用Ruby开发。二者之间利用自己移植到Ruby的QWebChannel来进行进程间通信。网页解析器进程在收到浏览器进程的解析请求之后,会从浏览器进程提供的网页源代码里解析出当前网页所引用的全部图片地址、当前网页所引用的全部目标链接地址,并回复给浏览器进程。

使用Nokogiri进行HTML解析,使用QWebChannel进行进程间通信。QWebChannel并不限制底层用的传输协议,目前常见选择是以WebSocket作为传输协议。

About

KeywordWonderer项目中使用的网页解析器,用于解析出网页中的链接目标和图片地址。使用Ruby开发,使用nokogiri做网页内容解析。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages