【自动化测试】web3py 连接 goerli

web3py 连接 goerli

直接使用库里方法

python 复制代码
if __name__ == '__main__':
    from web3.auto.infura.goerli import w3
    w3.eth.get_balance(get_address_by_private_key(os.getenv("AAA_KEY")))
  • error info:
text 复制代码
websockets.exceptions.InvalidStatusCode: server rejected WebSocket connection: HTTP 401

换一种方式

python 复制代码
from web3 import Web3, HTTPProvider
connection = Web3(HTTPProvider('https://goerli.infura.io/v3/<API-KEY>'))
print ("Latest Ethereum block number", connection.eth.blockNumber)

但没有 api-key 的话

shell 复制代码
Traceback (most recent call last):
  File "/Users/apple/github/qadev-py-scripts/test-web3/spider_eth.py", line 26, in <module>
    from web3.auto.infura.goerli import w3
  File "/Users/apple/miniconda/envs/web3/lib/python3.7/site-packages/web3/auto/infura/__init__.py", line 13, in <module>
    _infura_url = build_infura_url(INFURA_MAINNET_DOMAIN)
  File "/Users/apple/miniconda/envs/web3/lib/python3.7/site-packages/web3/auto/infura/endpoints.py", line 55, in build_infura_url
    key = load_api_key()
  File "/Users/apple/miniconda/envs/web3/lib/python3.7/site-packages/web3/auto/infura/endpoints.py", line 35, in load_api_key
    "No Infura Project ID found. Please ensure "
web3.exceptions.InfuraKeyNotFound: No Infura Project ID found. Please ensure that the environment variable WEB3_INFURA_PROJECT_ID is set.

从报错看的需要一个 WEB3_INFURA_PROJECT_ID, 去申请一个 infura id

问题解决

资料

相关推荐
Rockbean7 小时前
3分钟Solidity: 5.2 发送以太币(传输、发送、调用)
web3·区块链·solidity
清 晨7 小时前
Twitter热点追踪--互动飙升
web3·互联网·facebook·twitter·tiktok·instagram·clonbrowser
RainWeb310 小时前
Foundry 智能合约测试流程讲解指南
web3·智能合约
RainWeb310 小时前
Foundry 中 remapping.txt 原理详解(2025 最新完整版)
web3·智能合约
木西1 天前
第一价格密封拍卖智能合约全流程实现指南
web3·智能合约·solidity
焦点链创研究所1 天前
Fusaka升级对以太坊都有哪些好处?
人工智能·科技·web3·去中心化·区块链
Keegan小钢1 天前
BlockLever实战营日志 #7 | 前端UI设计
web3·ai编程
Biteagle2 天前
ZK + 比特币:B² Network 如何重塑 Layer2 的信任边界
web3·区块链
OpenBuild.xyz2 天前
对话 Nexus:从 DEX Alpha 到 APAC 生态的社区共建之路|AMA 回顾文章
web3·去中心化·区块链
古城小栈3 天前
Java 在 Web3 时代的新定位
java·开发语言·web3