首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用web3.py创建类似于EtherScan“事务操作”的输出

使用web3.py创建类似于EtherScan“事务操作”的输出
EN

Ethereum用户
提问于 2021-09-07 05:42:04
回答 1查看 637关注 0票数 1

我试图从以太扫描中获取事务数据,并希望得到事务详细信息的"Transaction“部分中所表示的内容。

例如,在事务处理(transaction散列: 0x62f4c14dabbd54bba3657780fffcf258cb358bbb5a8beb7e4eddc9e05b963844) )中,可以看到1,587.116348149284747459 BBANK被交换为0.076451012303912703以太,然后交换为15,298.900710437101191036 BBANK。如何从日志中解析这些信息?我见过很多帖子都问过类似的问题,但没有看到一个确切的答案来解释这些信息是如何被提取的。

查看日志,我可以看到事务中涉及的各种令牌的契约地址。但我不明白日志中的数据是如何转换成这个简单的事务摘要的。

我主要使用python和Web3以及etherscan来获取和解析数据。

EN

回答 1

Ethereum用户

发布于 2021-09-07 07:21:39

日志通过ABI转换为人类可读的输出。您可以在web3.py中构造Contract实例,然后使用事件方法将原始JSON数据的输出解析为人类可读的数据结构。

在这种情况下,您需要解析Swap (Uniswap)和Transfer事件(ERC-20)。您将在Github上的项目的各个存储库中找到ABI文件。如果只有可靠的源代码可用,那么您可以自己编译该源代码以生成ABI文件。

原始数据本身可以在任何托管的虚空节点上通过JSON获得。以太扫描不提供此服务。

票数 2
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/109492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档