A spider framework powered by groovy
MIT License
groovy执行引擎完成,spider雏形实现。
使用自己实现的httpproxy。项目详情
因为做好了骨架,只需要修改taskmanager\src\main\resources
下的groovy脚本就可以构建自己的爬虫任务。
目前还是雏形,需要改进的地方是:
这是EasySpider的第一版。还很简单,源码读起来也轻松,要看代码,从这一版开始吧。之后就会引入分布式了亲。
!!!这里对groovy脚本的使用和“任务上下文”的定义是EasySpider的精髓。
分为两个模块:
httpclient本身可以自己管理cookie。但我选择了自己去维护cookie,而httpclient开启了IGNORE_COOKIE。原因是,httpclient的cookie是绑定在httpclient上,在分布式环境中会存在多个httpclient。这样,一些httpclient执行了关键比如登陆操作,而其他的httpclient没有执行,这样就导致其他httpclient没有登陆之后拿到的cookie。这肯定不行,所以我将cookie信息保存在了“任务上下文”中,这个任务上下文可以在分布式环境中传递,保证关键cookie不丢失。
只需要创建自己的groovy脚本就好。groovy脚本实现Step接口,创建请求,解析响应。