为什么 web3.eth.getBlock 给出空答案而 getTransactionReceipt 给出错误?
why web3.eth.getBlock gives null answer and getTransactionReceipt gives error?
我在 python 代码中使用 Web3.py。代码是这样的
from web3 import Web3
w3 = Web3(Web3.HTTPProvider("https://ropsten.infura.io/"))*
for i in range(5000000,5100000):
print(i)
transactionArray = []
blockResult = w3.eth.getBlock(i)
for tx in blockResult["transactions"]:
txResult = binascii.hexlify(tx).decode()
print(txResult)
transactionResult = w3.getTransactionReceipt(txResult)
print(transactionResult)
当我执行这段代码时,出现错误
5000000
Traceback (most recent call last):
File "Test06.py", line 27, in <module>
for tx in blockResult["transactions"]:
TypeError: 'NoneType' object is not subscriptable
但如果我从 4571699 开始,它会给出结果。有人能告诉我为什么我收到范围从 5000000
开始的错误
我用的是MAIN NET,所以解决了这个问题。但是现在我收到一个错误
Traceback (most recent call last):
File "Test06.py", line 35, in <module>
transactionResult = w3.getTransactionReceipt(txResult)
AttributeError: 'Web3' object has no attribute 'getTransactionReceipt'.
您使用的是 ropsten 测试链,截至此答案只有 4572019 个区块。
我在 python 代码中使用 Web3.py。代码是这样的
from web3 import Web3
w3 = Web3(Web3.HTTPProvider("https://ropsten.infura.io/"))*
for i in range(5000000,5100000):
print(i)
transactionArray = []
blockResult = w3.eth.getBlock(i)
for tx in blockResult["transactions"]:
txResult = binascii.hexlify(tx).decode()
print(txResult)
transactionResult = w3.getTransactionReceipt(txResult)
print(transactionResult)
当我执行这段代码时,出现错误
5000000
Traceback (most recent call last):
File "Test06.py", line 27, in <module>
for tx in blockResult["transactions"]:
TypeError: 'NoneType' object is not subscriptable
但如果我从 4571699 开始,它会给出结果。有人能告诉我为什么我收到范围从 5000000
开始的错误我用的是MAIN NET,所以解决了这个问题。但是现在我收到一个错误
Traceback (most recent call last):
File "Test06.py", line 35, in <module>
transactionResult = w3.getTransactionReceipt(txResult)
AttributeError: 'Web3' object has no attribute 'getTransactionReceipt'.
您使用的是 ropsten 测试链,截至此答案只有 4572019 个区块。