簡體   English   中英

使用 web3.py 和 infura.io 監聽 Uniswap 合約事件

[英]Listening to Uniswap contract events using web3.py and infura.io

我想使用 web3.py 和 infura.io 來監聽 Uniswap 工廠事件,但是我不太確定 go 應該在哪里這樣做。

這是一個鏈接: https://uniswap.org/docs/v2/smart-contracts/factory/

更具體地說,我想監聽PairCreated事件。

這是粗略的指南

  1. 獲取 Uniswap 合約的 ABI

  2. 創建 web3.py合約 object

  3. 您可以使用web3.eth.getLogs()來查詢過去區塊范圍內的事件

  4. 您不能一次查詢所有事件,因為事件太多,Infura 會超時。 相反,您需要在塊范圍切片上仔細查詢事件。

這是一些舊代碼,可能適用於也可能不適用於最新的 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM