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

2017-08-16 19:41:19 +08:00
 milklee

受到利用『爬虫』 折衷解决 个人支付宝支付系统 ---- 获取账单信息这个帖子的启发,开发了一个 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: '支付成功' } ]
4811 次点击
所在节点    分享创造
4 条回复
shuangguanQuail
2017-08-16 20:13:41 +08:00
可以,最近在想怎么写一个在 panda tv 抢佛跳墙竹子的软件,恰好可以参考一下。
ovear
2017-08-16 20:34:04 +08:00
谢谢 LZ,先资糍下
kevinzhwl
2017-08-16 21:54:04 +08:00
不错
sunsh217
2017-08-17 10:27:54 +08:00
没经过时间检验的产品。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/383475

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX