Pholcus 爬虫 v0.8.2,性能提升 20% 以上

jopen 4年前

Pholcus(幽灵蛛)是一款纯Go语言编写的高并发、分布式、重量级爬虫软件,支持单机、服务端、客户端三种运行模式,拥有Web、GUI、命令行三种操作界面;规则简单灵活、批量任务并发、输出方式丰富(mysql/mongodb/csv/excel等)、有大量Demo共享;同时她还支持横纵向两种抓取模式,支持模拟登录和任务暂停、取消等一系列高级功能。

Pholcus 爬虫 v0.8.2,性能提升 20% 以上

V0.8.0版本更新如下:

  • 移除Response;

  • 重构Context,同时增加Context.GetCookie()方法;

  • 重构mgo与mysql输出模块,优化连接池,增加异常重连函数,提高输出性能与稳定性;

  • 优化调度器中sdl.Push()方法,降低内存占用;

  • 修复不支持freebsd系统的bug;

  • 规范全局代码;

  • 规范日志打印格式;

  • 兼容 go1.6 版本;

  • 本版本通过大量代码重构与优化,减少约30%的堆栈数量。

Pholcus特点:

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

  • 支持单机、服务端、客户端三种运行模式,即支持分布式布局,适用于各种业务需要;

  • 支持Web、GUI、命令行三种操作界面,适用于各种运行环境;

  • 支持mysql/mongodb/csv/excel等多种输出方式,且可以轻松添加更多输出方式;

  • 采用surfer高并发下载器,支持 GET/POST/HEAD 方法及 http/https 协议,同时支持固定UserAgent自动保存cookie与随机大量UserAgent禁用cookie两种模式,高度模拟浏览器行为,可实现模拟登录等功能;

  • 服务器/客户端模式采用teleport高并发socketAPI框架,全双工长连接通信,内部数据传输格式为JSON;

  • 对采集规则进行了精心设计,支持静态编译与动态JS两种规则,灵活简单且有大量Demo,写规则就是这么轻松;

  • 支持横纵向两种抓取模式,并且支持任务暂停、取消等操作。

来自: http://www.oschina.net/news/71195/pholcus-0-8-2