V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuxueli
V2EX  ›  Java

XXL-CRAWLER v1.2.2 发布,分布式爬虫框架

  •  
  •   xuxueli · 2018-10-24 08:42:59 +08:00 · 1554 次点击
    这是一个创建于 1983 天前的主题,其中的信息可能已经有所发展或是发生改变。

    v1.2.2 新特性

    • 1、系统底层重构,规范包名;
    • 2、采集线程白名单过滤优化,避免冗余失败重试;
    • 3、增强 JS 渲染方式采集能力,原生新提供 "SeleniumPhantomjsPageLoader",支持以 "selenisum + phantomjs" 方式采集页面数据;
    • 4、支持采集非 Web 页面,如 JSON 接口等,直接输出响应数据;选择 "NonPageParser" 即可;

    简介

    XXL-CRAWLER 是一个分布式爬虫框架。一行代码开发一个分布式爬虫,拥有"多线程、异步、IP 动态代理、分布式、JS 渲染"等特性;

    输入图片说明

    特性

    • 1、简洁:API 直观简洁,可快速上手;
    • 2、轻量级:底层实现仅强依赖 jsoup,简洁高效;
    • 3、模块化:模块化的结构设计,可轻松扩展
    • 4、面向对象:支持通过注解,方便的映射页面数据到 PageVO 对象,底层自动完成 PageVO 对象的数据抽取和封装返回;单个页面支持抽取一个或多个 PageVO
    • 5、多线程:线程池方式运行,提高采集效率;
    • 6、分布式支持:通过扩展 "RunData" 模块,并结合 Redis 或 DB 共享运行数据可实现分布式。默认提供 LocalRunData 单机版爬虫。
    • 7、JS 渲染:通过扩展 "PageLoader" 模块,支持采集 JS 动态渲染数据。原生提供 Jsoup(非 JS 渲染,速度更快)、HtmlUnit(JS 渲染)、Selenium+Phantomjs(JS 渲染,兼容性高) 等多种实现,支持自由扩展其他实现。
    • 8、失败重试:请求失败后重试,并支持设置重试次数;
    • 9、代理 IP:对抗反采集策略规则 WAF ;
    • 10、动态代理:支持运行时动态调整代理池,以及自定义代理池路由策略;
    • 11、异步:支持同步、异步两种方式运行;
    • 12、扩散全站:支持以现有 URL 为起点扩散爬取整站;
    • 13、去重:防止重复爬取;
    • 14、URL 白名单:支持设置页面白名单正则,过滤 URL ;
    • 15、自定义请求信息,如:请求参数、Cookie、Header、UserAgent 轮询、Referrer 等;
    • 16、动态参数:支持运行时动态调整请求参数;
    • 17、超时控制:支持设置爬虫请求的超时时间;
    • 18、主动停顿:爬虫线程处理完页面之后进行主动停顿,避免过于频繁被拦截;

    文档地址

    技术交流

    5 条回复    2018-10-24 21:27:39 +08:00
    0312birdzhang
        1
    0312birdzhang  
       2018-10-24 08:57:55 +08:00 via iPhone
    XXL 系列👍 赞一个
    lyhiving
        2
    lyhiving  
       2018-10-24 09:40:06 +08:00
    支持
    yoqu
        3
    yoqu  
       2018-10-24 11:05:27 +08:00
    @xuxueli 老板是什么可以让你这么高产
    xuxueli
        4
    xuxueli  
    OP
       2018-10-24 21:23:45 +08:00 via Android
    @0312birdzhang
    @lyhiving 感谢支持哈!
    xuxueli
        5
    xuxueli  
    OP
       2018-10-24 21:27:39 +08:00 via Android
    @yoqu 哈哈,兴趣使然
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5452 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 01:34 · PVG 09:34 · LAX 18:34 · JFK 21:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.