android中实现支付宝账单抓取

这篇具有很好参考价值的文章主要介绍了android中实现支付宝账单抓取。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、引言

        对个人开发者来说,支付问题一直是一个痛点,网上也充斥着各种解决方法,但大多都是随着时间的推移逐渐过时,或者就是一些残缺不全的拼凑版本,为了给更多的个人开发者提供便利,我这里为大家提供一期最新的版本,亲测有效,并且大家可以根据源码自行修改成适合自己的版本,如果需要相关的技术支持,可以通过文章末尾提供的联系方式联系我。

2、实现思路

        我这里是通过爬虫定时抓取支付宝账单的方式实现的,而抓取的目标账单是支付宝固定金额收款码,通过设置不同的收款理由进行相同金额的区分,如果需要修改代码只需要修改筛选收款理由的条件就行了,我这里只展示部分关键代码,完整的源码下载地址会放在文章末尾。

3、实现步骤

3.1、登录并开始抓取

        为了安全考虑,我这里不使用账号密码登录的方式,必须用支付宝扫码登录支付宝账单页面后才能使用,具体如下图所示,扫码登录后会进入如下页面,筛选目标是收款理由为123的账单数据,且只筛选最新的10个账单数据,进入账单页面后点击开始按钮就会开始循环抓取数据。

android中实现支付宝账单抓取,android

3.2、定位账单数据位置

        支付宝每一条账单以及对应的源码,如下图所示,他们的标签的id是有规律的,我们就根据这些id进行账单记录的定位就可以获得账单的原始数据,然后进行解析分离就可以了。

android中实现支付宝账单抓取,android

3.3、定位代码

        通过下方的代码定位到具体的标签,然后继续获取子标签就能获取到每一条账单记录对应的数据。

var id_source='J-item-';
var id;
for(var i=0;i<10;i++){
    id=id_source+(i+1);
    var tr=document.getElementById(id);
    var tds=tr.cells;
    }

3.4、原始数据解析

        通过js接口把数据传递给java代码进一步解析数据,下面是传递数据的核心代码,包括js代码和java核心代码。

window.Android.setContent(end,order,account);
window.Android.setSend();
    private class AndroidAndJs {
        /**
         * 用于获取账单数据并添加到List集合中
         */
        @JavascriptInterface
        public void setContent(String used,String order,String account) {
            if ((used != null && used.length() > 0) &&
                    (order != null && order.length() > 0) &&
                    (account != null && account.length() > 0)) {
                int index = order.indexOf("交易号:");
                order=order.substring(index+4);
                account=account.substring(1);
                pay=new ServicePay();
                //必须去除空格,js代码中去除空格在这里没效果
                order=order.trim();
                account=account.trim();
                pay.setPay_account(account);
                pay.setPay_order(order);
                pay.setPay_name("");
                pay.setPay_time("");
                if (Integer.parseInt(used)==1){
                    list.clear();
                }
                list.add(pay);
            }
        }
        /**
         * 发送数据到服务器,并发送延迟消息定时刷新网页,避免网页过期
         */
        @JavascriptInterface
        public void setSend(){
            json = new Gson().toJson(list);
//            handler.sendEmptyMessage(2);//提交数据
            handler.sendEmptyMessage(1);//显示数据
        }
    }

3.5、显示最终数据

        解析后的数据最终会转化为json字符串显示在输入框内,如下图所示。

android中实现支付宝账单抓取,android

4、源码及联系方式

4.1、源码下载地址

        下载地址:code.drjtrtj.xyz/downCode?id=1

4.2、联系方式

        如需技术支持扫码加微信联系

android中实现支付宝账单抓取,android文章来源地址https://www.toymoban.com/news/detail-828293.html

到了这里,关于android中实现支付宝账单抓取的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android中如何通过perfetto抓取trace

    一,perfetto的作用 Perfetto的作用是提供一个性能检测和跟踪分析工具集 ,用于Android、Linux和Chrome平台。 Perfetto是Google推出的一款全新的平台级跟踪分析工具,它从Android 10开始被引入,旨在替代之前的systrace工具。Perfetto的核心特点包括用户空间到用户空间的跟踪协议,基于p

    2024年02月21日
    浏览(41)
  • android中实现底部导航栏

            底部导航栏在app应用中是十分常见了,大部分的安卓应用中也都实现了底部导航栏的功能,这里我就以我以前做的一个简单小说阅读软件为例,为大家演示一下底部导航栏的使用,需要的朋友直接复制代码过去改写就行了。         这里包含了一些进行操作实际

    2024年02月19日
    浏览(46)
  • fiddler抓取Android手机app发送的请求

    场景:需要抓取手机APP发送的请求 1.下载安装fiddler 网址:https://www.telerik.com/download/fiddler-everywhere 2. 配置fiddler a.工具栏选择Tools–Options–Connections,勾选Allow remote computers to connect,如下图示: b.如果需要抓取https的请求,需要配置HTTPS如下图示: 3.安装证书 电脑、手机均需要

    2024年02月09日
    浏览(60)
  • Android 7在Burpsuite中无法抓取HTTPS包

    链接(URL):https://www.hygrey.com/burpsuite-can-not-capture-https-packet-in-android7.html 来源(Source):渡缘人   渡缘人大佬的教程详细的列出来Android 7 配置bp抓包的流程,也可以一同参考下面的链接 https://blog.chenjia.me/articles/171029-223953.html   说说遇到的问题,首先就是adb使用不熟练,建议先打

    2024年02月17日
    浏览(48)
  • Android中实现Material3主题

    Material 3是由Google引入的一种设计系统,通过采用一套设计原则、指南和组件,提供统一直观的用户体验。 在本篇文章中,您将学习如何: 在您的Android应用程序中应用Material 3主题。 如何使用Material 3属性应用于您的视图。 如何应用动态着色。 首先需要引入material组件以来:

    2024年01月17日
    浏览(35)
  • Android中实现滑动的7种方法

    Android坐标系以屏幕的左上角这个点为原点,向右为x轴正方向,向下为y轴正方向;可以使用getLocationOnScreen(int location[])这样的方法来获取Android坐标系中点的位置,即该视图左上角在ANdroid坐标系中的坐标。在触控事件中,使用getRawX()、getRawY()方法获取的坐标也是Android坐标系中

    2024年02月09日
    浏览(39)
  • Unity Android平台接入支付宝支付全流程

      Unity3D接入支付宝支付的流程非常复杂,涉及到很多方面(有任何问题都可以在评论区留言,我尽量尽快回复)所以写篇文章记录一下。支付宝支付和微信支付以及其它支付差不多,但是支付宝有沙箱环境,可以很方便地调试,所以选用支付宝平台作为演示。   此教程

    2024年04月29日
    浏览(45)
  • Android 通过scheme跳转支付宝实现支付

    原文地址: Android 通过scheme跳转支付宝实现支付 - Stars-One的杂货小窝 需求的来源是支付功能,由于支付宝不允许个人开通具有webhook的支付服务,所以是对接了一个支付系统(应该算作四方支付)。创建订单后,系统会返回一个h5链接。 对于PC版的软件,将此链接转为二维码,然后提示

    2023年04月25日
    浏览(32)
  • Android 7.0以上charles无法抓取部分https包问题

    手机通过访问chls.pro/ssl下载.pem证书,如无法安装,在文件管理器中将后缀名改为.crt 在设置中安装该证书 Charles-Proxy - SSL Proxying Setting - Include 添加需要抓包的URL:443即可 以上基本配置结束后,看下代码 AndroidManifest.xml文件的中添加android:networkSecurityConfig=“@xml/network_security_conf

    2024年02月21日
    浏览(40)
  • Flutter:如何在Android中实现串口通信调试

            本文介绍如何通过flutter_libserialport插件在Flutter中实现串口通信调试。 1、引入依赖         在flutter工程的pubspec.yaml文件中引入flutter_libserialport依赖: 2、导入import依赖包         在dart代码中import导入flutter_libserialport.dart就可以使用了。 3、读取所有串口设备    

    2024年02月13日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包