Events
web3.py
:AttributeError:“契約”對像沒有屬性“事件過濾器”
更新:
對於
web3 v5.x.x
,事件日誌過濾器如下:
event_filter= myContract.events.<event_name>.createFilter(fromBlock="latest", argument_filters={'arg1':10}) event_filter.get_new_entries()
***目標:***我想列印智能合約的日誌,就像我在 上做的那樣
web3.js
,使用web3.py
.另一方面
web3.js
,以下程式碼段有效:var event = myContract.LogJob({}, {fromBlock:0, toBlock:'latest'}); event.watch(function(error, result) { console.log(JSON.stringify(result)); });
但在 web3.py 方面,我無法使其工作。:( 我遵循了以下文件。
event_filter = myContract.eventfilter('LogJob', {'filter': {'arg1':10}})
我遇到的錯誤:
AttributeError: 'Contract' object has no attribute 'eventFilter'
我也嘗試過以下程式碼行,但效果不佳:
event = myContract.call().LogJob({}, {'fromBlock':100, 'toBlock':110});
**$$ Q $$**難道我做錯了什麼?我該如何解決這個問題?
您正在嘗試使用 v4 功能。您很有可能安裝了 v3。要安裝最新的 v4 版本,請使用:
pip3 install --upgrade web3