from web3.auto.infura import w3
print(w3.isConnected())
上述代码调用web3.py尝试连接以太坊时(需要在infura进行注册,创建project得到ID和key)
出现了标题的报错
web3py的官方文档中要求设置环境变量WEB3_INFURA_API_SECRET
If you have checked the box in the Infura UI indicating that requests need an optional secret key, set the environment variable
WEB3_INFURA_API_SECRET:$ export WEB3_INFURA_API_SECRET=YourSecretKey
debug 后发现抛出异常的位置:
def load_api_key():
# at web3py v5, drop old variable name INFURA_API_KEY
key = os.environ.get(
'WEB3_INFURA_API_KEY',
os.environ.get('INFURA_API_KEY', '')
)
if key == '':
raise InfuraKe

在使用web3.py库连接以太坊并依赖Infura API时,遇到错误提示需设置WEB3_INFURA_API_KEY环境变量。根据web3py文档,需设置该环境变量。在Windows环境下,通过'export'命令无法成功设置,尝试使用'set'命令同样无效。最终解决方案是在PyCharm的设置中配置环境变量,从而解决了问题。
最低0.47元/天 解锁文章





