`web3.py`: AttributeError: объект 'Contract' не имеет атрибута 'eventFilter'

Цель: Я хочу печатать журналы интеллектуального контракта, например, на 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] Я что-то делаю неправильно? Как я могу это исправить?

3 голоса | спросил alper 18 MaramSun, 18 Mar 2018 10:54:17 +03002018-03-18T10:54:17+03:0010 2018, 10:54:17

1 ответ


2

Вы пытаетесь использовать функцию v4. Скорее всего, у вас установлен v3. Чтобы установить последнюю версию v4, используйте:

pip3 install --upgrade web3
ответил carver 21 MarpmWed, 21 Mar 2018 20:53:45 +03002018-03-21T20:53:45+03:0008 2018, 20:53:45

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132