转载

Pholcus 幽灵蛛 —— Go 编写的重量级爬虫软件

7.16,杭州。阿里百川无线开放大会。阿里与开发者一起见证移动的力量

Pholcus(幽灵蛛)是一款纯Go语言编写的重量级爬虫软件,清新的GUI界面,优雅的爬虫规则、可控的高并发、任意的批量任务、多种输出方式、大量Demo,支持横纵向两种抓取模式,支持模拟登录和任务取消等,并且考虑了支持分布式布局。

框架模块

Pholcus 幽灵蛛 —— Go 编写的重量级爬虫软件

框架特点

  1. Pholcus(幽灵蛛)以高效率,高灵活性和人性化设计为开发的指导思想;

  2. 继承Go语言“少即是多”的风格,GUI界面尽量少得呈现技术层面的参数配置,而在程序内部做智能化参数调控;

  3. 对采集规则进行了精心设计,结构化规则、高度封装、通用方法集、自由灵活的发挥空间,让你轻松添加规则;

  4. 每个pholcus程序既可以是服务器也可以是客户端,通过socket传递request来实现任务分发,其中hpolcus模块充当管理核心的角色,负责分发给其他节点和本地队列请求以及实时log,(比如,让Pholcus软件同时在10台电脑运行,你就拥有了10个节点,自然形成分布式)。目前该功能的架构已经初步完成,接口即将实现,敬请关注;

  5. 支持横纵向两种抓取模式,并支持任务取消操作。

GUI界面

随时改进中,该截图仅供参考!

Pholcus 幽灵蛛 —— Go 编写的重量级爬虫软件

初次安装

go get github.com/henrylee2cn/pholcus

编译运行

go install -ldflags="-H windowsgui"

或者

go build -ldflags="-H windowsgui"

添加ICON

Pholcus 幽灵蛛 —— Go 编写的重量级爬虫软件

添加规则

  • 添加一条规则的方法:只需在“henrylee2cn/pholcus/spiders/”中增加一个采集规则(go文件),框架将自动添加该规则到GUI任务列表!

第三方依赖包

go get "github.com/lxn/walk" go get "github.com/lxn/win" go get "github.com/PuerkitoBio/goquery" go get "github.com/henrylee2cn/surfer" go get "github.com/bitly/go-simplejson" go get "github.com/tealeg/xlsx" go get "gopkg.in/mgo.v2" go get "code.google.com/p/mahonia" go get "golang.org/x/net/html/charset"
正文到此结束
Loading...