yis*_*wer 5 python ethereum web3-donotuse
我想通过 Web3.py 查看以太坊 txpool 中的实时待处理交易。我不运行本地节点,而是使用 Infura。
根据 Web3.py 的文档,显然一个有三个不同的选项:
选项 1 不可行,因为 API 似乎不支持 Infura 节点。因此,我尝试了选项 2 和 3,它们给了我两组不同的待处理交易。有谁知道为什么会这样?这两种方法是否检索不同的待处理事务?谢谢!
选项2:
pending_block= w3.eth.getBlock(block_identifier='pending', full_transactions=True)
pending_transactions= pending_block.['transactions']
Run Code Online (Sandbox Code Playgroud)
选项3:
pending_transactions_filter= w3.eth.filter('pending')
pending_transactions= pending_transactions_filter.get_new_entries()
Run Code Online (Sandbox Code Playgroud)
小智 4
这些从根本上来说是不同的交易集,因为选项 2 似乎只是过滤待处理块,但选项 3 包括更多甚至不在待处理块中的待处理交易。这对我来说很明显,因为选项 2 允许您获取完整的 tx 内容/信息,但选项 3 只提供 txhash ID,其中许多无法查找。
| 归档时间: |
|
| 查看次数: |
4912 次 |
| 最近记录: |