搭建以太坊平台涉及到多个步骤,下面是详细的步骤:
1.安装依赖。
(1)安装 PyCharm 之后(我用的是 pycharm 2023.2.1),配置 Web3.py 库
Web3.py 库,是一个 Python 库,能与以太坊节点进行通信。可以通过 pip
安装:
pip install web3
如果速度太慢,可以是使用清华大学镜像源安装 Web3.py 的命令:
pip install web3 -i https://pypi.tuna.tsinghua.edu.cn/simple
或者使用豆瓣的镜像源来安装 Web3.py 也可以:
pip install web3 -i https://pypi.douban.com/simple
(2)安装以太坊节点模拟器
1)安装 Node.js:Ganache CLI 是一个 Node.js 应用程序,所以首先需要安装 Node.js。从 Node.js 官网 下载安装。安装完成后,打开一个新的终端或命令提示符窗口,输入以下命令来验证 Node.js 是否安装成功:
node -v
如果安装成功,它会显示安装的 Node.js 版本号。
2)安装 Ganache CLI:打开终端或命令提示符,运行以下命令来安装 Ganache CLI:
npm install -g ganache-cli
安装完成后,通过运行以下命令来验证 Ganache CLI 是否安装成功:
ganache-cli --version
如果安装成功,它会显示安装的 Ganache CLI 版本号。
2.启动本地以太坊节点:使用 Ganache 作为本地以太坊节点。
1)启动 Ganache CLI
安装完成后,通过以下命令启动 Ganache CLI:
ganache-cli
默认情况下,Ganache CLI 会在 8545 端口提供 10 个预设的账户,每个账
户都有 1000 个以太币(ETH),并且交易不需要支付 Gas 费用。
2)配置 Ganache
Ganache CLI 可以通过命令行参数来自定义配置,例如设置端口号、账户数量、区块时间等。
比如,想要自定义端口号,可以使用以下命令:
ganache-cli --port 8546
启动 Ganache CLI,端口就变成了 8546,如图所示:
3)使用 Ganache 与 web3.py 连接
在 Python 中,可以将 Ganache 的 HTTP 提供者地址设置为 web3.py 的提供者,
如下所示:
from web3 import Web3
# 连接到 Ganache 节点
w3 = Web3(Web3.HTTPProvider('http://127.0.0.1:8546'))
连接完之后还需要验证是否已经连接成功。用来检查连接状态的方式之一是尝
试发送一个简单的请求,比如获取当前的区块号或者获取账户列表。如果请求
成功,那么可以认为连接是成功的。代码截图如下:
运行结果是这样的:
成功获取到账户列表(即 accounts 不为空),说明连接成功。到这一步可以认
为以太坊平台的环境已经搭建好了。
也可以通过尝试获取当前的区块号来检查是否连接成功,代码截图如下:
如果连接成功,则会输出如下:
4)使用 Ganache UI。除了命令行版本,Ganache 还提供了一个图形用户界面(GUI)版本,可以更直观地看到账户、交易、区块等信息。安装步骤如下:
①通过访问 SourceForge 上的 Ganache 镜像页面 来下载不同版本的 Ganache。
( https://sourceforge.net/projects/ganache.mirror/files/ ) , 我 下 载 的 是
Ganache-2.7.1-win-x64-setup.exe。
②双击 Ganache-2.7.1-win-x64-setup.exe 文件开始安装过程。在安装向导中,阅读并接受许可协议,选择安装路径。选择默认的安装路径,或者点击“浏览”选择一个不同的安装位置。点击“安装”按钮,等待安装过程完成。
③安装完成后,启动 Ganache。第一次启动 Ganache 时,需要创建一个新的工作区。点击“New Workspace”并给你的工作区命名。
④Ganache 启动后,它会显示一个图形界面,其中包括多个标签页,如 Accounts、Blocks、Transactions、Contracts、Events 和 Logs。你可以使用这些功能来模拟以太坊区块链环境,进行智能合约的开发和测试。
⑤在 Ganache 界面的顶部,一个显示 RPC 服务器地址的输入框(通常是http://127.0.0.1:7545)。可以将这个地址复制并用在需要连接到本地区块链模拟器的钱包或其他工具中,如 python。
⑥连接好之后,就可以开始在 Ganache 上部署智能合约并进行测试了。
⑦修改配置文件,如修改端口号:点击齿轮图标打开设置。在设置中找到“Server”部分。修改“Port”字段为你想要设置的端口号。点击“Save”保存设置。关闭并重新启动 Ganache 使设置生效。如下图所示,这是修改后的端口号(8546):