1.etherscan api地址

https://etherscan.io/apis

2.获取特定区块段,中的特定合约的交易记录

https://api.etherscan.io/api?module=account&action=tokentx&contractaddress=填入合约地址&startblock=0&endblock=10000&page=1&offset=100&sort=asc&apikey=YourApiKeyToken接口原理:按照区块获取交易记录(eth上的es设置只有10000,所以采取这种方式)
部分参数示例:
contractaddress 自己的合约地址
startblock 开始区块
endblock 结束区块
page 页数
offset 每页数量
&apikey=YourApiKeyToken   测试时(最好修改)可不修改,只是限制调用次数

3.获取eth区块高度

https://api.etherscan.io/api?module=proxy&action=eth_blockNumber&apikey=YourApiKeyToken

实现代码:

 @Scheduled(cron = "0/1 * * * * ? ") // 间隔1秒执行public synchronized void tokenTranferRec() {try {logger.info("获取交易记录");ErcConfigEntity ercConfigEntity = ercConfigService.selectById(1);String result = GetApi.getApi(TOKENTRANSFERRECSTART +STARTBLOCK + ercConfigEntity.getStartBlock() +ENDBLOCK + ercConfigEntity.getEndBlock() +PAGE + ercConfigEntity.getPage() +OFFSET + ercConfigEntity.getOffset() +TOKENTRANSFERRECEND);JSONObject object = JSON.parseObject(result);//判断接口调用返回值if ("1".equals(object.getString("status"))) {logger.info("已获取到交易记录");JSONArray list = object.getJSONArray("result");for (int i = 0; i < list.size(); i++) {JSONObject ercTraTec = list.getJSONObject(i);ErcTraRecEntity ercTraRecEntity = new ErcTraRecEntity();ercTraRecEntity = JSONObject.toJavaObject(ercTraTec, ErcTraRecEntity.class);logger.info(ercTraRecEntity.getHash());ercTraRecService.insertByHash(ercTraRecEntity);}ercConfigEntity.setPage(ercConfigEntity.getPage() + 1);ercConfigEntity.setOffseted(ercConfigEntity.getOffset());ercConfigService.updateById(ercConfigEntity);}//当前区块有数据时,不执行区块+10000,page=1的操作if (object.getJSONArray("result").size() <= 0) {//当前区段的块中没有记录时,将endBlock赋值给startBlock,endBlock+10000-->判断是否大于当前eth区块高度,//将startBlock,endBlock以及page=1入库。logger.info("start" + ercConfigEntity.getStartBlock());logger.info("end" + ercConfigEntity.getEndBlock());//获取区块高度String resul = GetApi.getApi(ETHBLOCKNUMBER);JSONObject object1 = JSON.parseObject(resul);long out = Integer.parseInt(object1.get("result").toString().substring(2, object1.get("result").toString().length()), 16) + 100000000L;//if (ercConfigEntity.getEndBlock() <= out) {ercConfigEntity.setStartBlock(ercConfigEntity.getEndBlock());ercConfigEntity.setPage(1L);}if ((ercConfigEntity.getEndBlock() + 10000) < out) {ercConfigEntity.setEndBlock(ercConfigEntity.getEndBlock() + 10000);} else {ercConfigEntity.setEndBlock(out);}ercConfigService.updateById(ercConfigEntity);}} catch (Exception e) {logger.error(e.toString());} finally {try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}}

erc20根据合约地址获取所有交易记录相关推荐

  1. 利用BSCScan获取账户交易记录

    文章目录 一.BSCScan账户 1.1 BSCScan注册 1.2 请求速率限制 1.3 常用文档参考 二.接口调用方法 2.1 获取地址的平台币交易记录 2.1.1 使用方法 2.1.2 curl ...

  2. (二)requests爬取智能合约账户地址及其交易记录

    1 背景 ​ 之前使用Selenium爬取 https://eth.btc.com/accounts 上的账户地址及其交易记录,但是运行时间很长,而且老报一些错误,所以想到换一种方式来爬取智能合约. ...

  3. eos获取用户的交易记录

    获取用户交易记录的方法:get_actions 调用此方法必须 配置 filter-on = * 或者打开mongodb插件

  4. 井通区块链API接口介绍02-挂单类+交易记录+交易效果

    本节介绍井通区块链的挂单接口和交易记录接口. 井通区块链是一个原生支持多资产,原生支持多资产之间相互交易的底层区块链系统,因此用户可以直接在链上挂单,用一种资产 交换另外一种资产,价格和数量可以自由定 ...

  5. Web3j通过合约地址监听transfer事件获取以太坊交易数据

    Web3j通过合约地址监听transfer事件获取以太坊交易数据 We3j web3j是一个轻量级的Java库,用于在Ethereum网络上集成客户端(节点). 核心特性 通过Java类型的JSON- ...

  6. 获取地址eth,usdt 余额及最早一次交易记录

    import csv import json import os import timeimport pandas as pd import requests import threading imp ...

  7. Python通过snmp获取交换机VLAN号、VLAN默认网关、VLAN子网掩码和ARP表中的IP地址与MAC对应记录数据

    自己做项目时,自己封装的Python通过snmp获取交换机VLAN号.VLAN默认网关.VLAN子网掩码和ARP表中的IP地址与MAC对应记录数据. myPySnmp.py源代码 "&quo ...

  8. 解决过帐时提示“无法获取内部公司交易记录的帐户”

    错误 当在 Microsoft Dynamics AX 2009 中启动了中国式凭证系统后,在进行凭证复核或过帐时提示: 英文:Fail to get the account for intercom ...

  9. ethereum扫描区块,获取区块内的交易记录

    初始化客户端 ⽤Go初始化以太坊客户端是和区块链交互所需的基本步骤.⾸先,导⼊go-etherem的 ethclient 包并 通过调⽤接收区块链服务提供者URL的 Dial 来初始化它. 若没有现有 ...

最新文章

  1. torch.empty()
  2. python多线程加速for循环_多线程-如何在Python的循环中对操作进行多线程
  3. Property ‘configuration‘ and ‘configLocation‘ can not specified with together
  4. OSMboxPost()
  5. 利用win7的applocker功能来有组织的阻止相关软件运行
  6. windows共享文件服务器迁移(NTFS权限,共享权限,磁盘配额迁移)
  7. cpp 原子操作_C++ 新特性学习(八) — 原子操作和多线程库[多工内存模型]
  8. STM32F103C8T6单片机IAP升级
  9. 椭圆极点极线性质_圆锥曲线(18)———圆锥曲线题目背后的性质总结(1)
  10. 耳挂式蓝牙耳机原理_专为运动而生的DOSS T63无线蓝牙耳挂式运动耳机
  11. mysql开发与运维_专业的MySQL开发规范
  12. 如何从知网下载学位论文的PDF?
  13. Opencores 无法点击submit的问题解决方案
  14. 我为什么要学习 Python(2020版)
  15. 原型工具MockingBot 墨刀
  16. 2021 iOS面试题大全---全方面剖析面试(二)
  17. [阿里天池]Baby Goods Info Data
  18. xcode 可以打开xmind_如何在 iPad 上玩转 XMind?
  19. 基于HSI颜色模型实现去除照片的“红眼现象”
  20. 向图档插入外部DWG图片 auto CAD .NET二次开发

热门文章

  1. Java中怎么将Long类型转换成Integer或int类型
  2. 【渝粤教育】电大中专Windows操作系统 (2)作业 题库
  3. Sniffing and sending packets is not available: winpcap is not installed
  4. css颜色和长度简写
  5. 《 种子用户方法论》读书笔记
  6. 大数据开发之Hive篇14-Hive归档(Archiving)
  7. rac archiving
  8. 使用docker安装mysql5.7
  9. MATLAB | 绘图复刻(二) | 折线图+误差棒+柱状图+散点抖动+灰色背景+图片叠加
  10. php gif 透明背景,php缩放gif和png图透明背景变成黑色的解决方法,缩放png_PHP教程...