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

Node.js 实现的一个 Scrapy like 爬虫框架

  •  2
     
  •   SteveZhang1995 · 2015-11-28 14:37:07 +08:00 · 8626 次点击
    这是一个创建于 3074 天前的主题,其中的信息可能已经有所发展或是发生改变。

    闲来无事想用 Node.js 写点东西练手,同时又想些爬虫,于是乎就有了这样一个爬虫项目。之前有过 Scrapy 的开发经验,于是乎就模仿 Scrpay 的 api 用 Node.js 实现了一套。
    附上 github 地址: https://github.com/SteveZhangBit/leiobunum

    名字取做 leiobunum 意思是长脚蜘蛛,感觉很形象啊~

    本身 Node.js 就是异步 IO ,非常适合爬虫这种高 IO 的程序,并且本身 Scrapy 也是建立在 Twisted 上的,所以用 Node.js 实现起来简直爽歪歪。

    自己还加上了一个 Redis 的支持,可以实现简单的分布式,实际测试原来要用数小时的爬去过程,缩短到了 10 来分钟,哈哈哈

    欢迎大家 fork 和 star

    第 1 条附言  ·  2015-11-28 22:44:28 +08:00
    发现 github 上空空如也,赶紧写了个 README...
    里面写了基本的用法,和附上了我自己测试过的一个例子。
    8 条回复    2016-12-13 16:14:04 +08:00
    coolicer
        1
    coolicer  
       2015-11-28 15:04:26 +08:00
    什么文档都木有?
    SteveZhang1995
        2
    SteveZhang1995  
    OP
       2015-11-28 15:26:42 +08:00
    @coolicer 呃,文档逐步完善。。。
    jziwenchen
        3
    jziwenchen  
       2015-11-28 15:48:07 +08:00
    nodejs + jquery 来实现爬虫和数据分析 感觉就像写 前端一样 呵呵.
    carlhan
        4
    carlhan  
       2015-11-28 15:59:26 +08:00
    README 都没有?
    SteveZhang1995
        5
    SteveZhang1995  
    OP
       2015-11-28 21:55:59 +08:00
    这几天我会尽快完善一下基本文档,给出一个最简单的例子
    fishlee
        6
    fishlee  
       2015-11-29 08:37:56 +08:00 via Android
    不知道能不能搞 search 这种情况: 最终数据要 3 个级联页才能拿到。 get(获取参数), post(中间页面,获取最终页地址及参数), post(结果)
    SteveZhang1995
        7
    SteveZhang1995  
    OP
       2015-11-29 15:17:25 +08:00
    @fishlee 目前爬虫只是最简单的形式,就是请求某个页面。对于这种情况,我觉得可能得用 phantomjs 才行
    kan831019
        8
    kan831019  
       2016-12-13 16:14:04 +08:00
    @SteveZhang1995 casperjs
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5932 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 02:08 · PVG 10:08 · LAX 19:08 · JFK 22:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.