2024-10-05 14:25:58 发布
网友
我想使用web3.py和infura.io来收听Uniswap factory的活动,但是我不太确定该去哪里听
这里有一个链接:https://uniswap.org/docs/v2/smart-contracts/factory/
更具体地说,我想监听PairCreated事件
PairCreated
这是粗略的指南
获取Uniswap合同的ABI
创建web3.pycontract object
您可以使用web3.eth.getLogs()查询过去块范围内的事件
web3.eth.getLogs()
您不能一次查询所有事件,因为事件太多,Infura将超时。相反,您需要在块范围内仔细查询事件
下面是一些旧代码,它们可能适用于最新的web3.py版本,也可能不适用于最新的web3.py版本
https://github.com/TokenMarketNet/sto/blob/master/sto/ethereum/scanner.py#L153
如果需要实时扫描程序,可以在事件发生时通过WebSocket连接列出:
https://web3py.readthedocs.io/en/stable/filters.html#asynchronous-filter-polling
这是粗略的指南
获取Uniswap合同的ABI
创建web3.pycontract object
您可以使用
web3.eth.getLogs()
查询过去块范围内的事件您不能一次查询所有事件,因为事件太多,Infura将超时。相反,您需要在块范围内仔细查询事件
下面是一些旧代码,它们可能适用于最新的web3.py版本,也可能不适用于最新的web3.py版本
https://github.com/TokenMarketNet/sto/blob/master/sto/ethereum/scanner.py#L153
如果需要实时扫描程序,可以在事件发生时通过WebSocket连接列出:
https://web3py.readthedocs.io/en/stable/filters.html#asynchronous-filter-polling
相关问题 更多 >
编程相关推荐