V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
milklee
V2EX  ›  分享创造

使用 Node.js 爬取支付宝的账单信息

  •  
  •   milklee · 2017-08-16 19:41:19 +08:00 · 4811 次点击
    这是一个创建于 2690 天前的主题,其中的信息可能已经有所发展或是发生改变。

    受到利用『爬虫』 折衷解决 个人支付宝支付系统 ---- 获取账单信息这个帖子的启发,开发了一个 Node.js 的版本,原理是一样的,都是使用 Selenium 操作 PhantomJS 模拟用户登录。

    源码地址: https://github.com/lmk123/alipay-bills 欢迎 Star 👏

    使用方式:

    const alipayBills = require('alipay-bills')
    
    // setUser 方法只能调用一次,同时请确保你的用户名和密码是正确的,alipay-bills 没有处理密码错误的情况。
    alipayBills.setUser('用户名', '密码')
    alipayBills.query().then(bills => {
      // bills 是一个数组,数组中每一项的结构为:
      //{
      //  day: string - 日期,如 '2017.08.15'
      //  time: string - 具体时间,如 '04:10'
      //  name: string - 对应「我的账单高级版」的「名称」
      //  orderNo: string - 对应「我的账单高级版」的「商户订单号|交易号」
      //  target: string - 对应「我的账单高级版」的「对方」
      //  amount: string - 对应「我的账单高级版」的「金额|明细」
      //  status: string - 对应「我的账单高级版」的「状态」
      //}
    })
    

    目前会在控制台输出日志,差不多像这样:

    正在跳转到登陆页……
    正在输入用户名……
    正在输入密码……
    正在点击登陆按钮……
    点击登陆按钮无反应,即将重试。
    尝试登陆时失败,正在重试……
    正在跳转到登陆页……
    正在输入用户名……
    正在输入密码……
    正在点击登陆按钮……
    正在等待浏览器跳转到账单页……
    登陆成功
    [ { day: '2017.08.16',
        time: '04:41',
        name: '余额宝-2017.08.15-收益发放',
        orderNo: '流水号:1234567789',
        target: '天弘基金管理有限公司',
        amount: '+ 0.01',
        status: '支付成功' } ]
    
    4 条回复    2017-08-17 10:27:54 +08:00
    shuangguanQuail
        1
    shuangguanQuail  
       2017-08-16 20:13:41 +08:00
    可以,最近在想怎么写一个在 panda tv 抢佛跳墙竹子的软件,恰好可以参考一下。
    ovear
        2
    ovear  
       2017-08-16 20:34:04 +08:00
    谢谢 LZ,先资糍下
    kevinzhwl
        3
    kevinzhwl  
       2017-08-16 21:54:04 +08:00
    不错
    sunsh217
        4
    sunsh217  
       2017-08-17 10:27:54 +08:00
    没经过时间检验的产品。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2752 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 05:58 · PVG 13:58 · LAX 21:58 · JFK 00:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.