资讯专栏INFORMATION COLUMN

如何利用Python库Web3.py和Infura在Windows中设置托管以太坊节点

jaysun / 904人阅读

摘要:第步启用与以太坊区块链交互从获得后。我希望本教程介绍了通过在操作系统中设置托管以太坊节点的基本步骤。这里是原文和中设置以太坊托管节点

如果你想与以太坊区块链进行交互以获取最新区块的详细信息,可以使用以太网节点、本地节点或托管节点连接到以太坊区块链的交易信息或发送交易。由于有许多第三方插件和应用程序可用于执行此操作,你可能会认为我们为什么需要一个节点。如果要部署智能合约或使用脚本自动与智能合约交互,则需要设置节点,而当前的第三方插件或应用程序可能无法实现这一点。

如果你选择使用像geth这样的客户端设置本地节点,它会将区块链同步到你的计算机,这将占用你的磁盘存储空间。但是,这可以通过设置托管节点来解决这个问题,其中有人控制节点,但你可以自由连接到以太坊区块链并使用它。Infura就是一种有助于建立本地节点的服务。

在这里,我将解释如何为64位Windows操作系统设置本地节点。请注意,本教程适用于64位Windows 8.1版本。但是,我相信其他Windows版本(如Windows 10,Windows 8,Windows 7和Windows Vista)可能没有太大差异。

首先,我将列出假设你尚未安装NPM和Python等依赖项的步骤。代码和详细的解释在本文稍后部分提到。

1.安装CMDER(非强制性)

2.安装Node.js和NPM

3.安装Windows构建工具

4.安装Python最新版本

5.安装Web3.py

6.安装iPython

7.创建infura.io帐户

8.能够与以太坊区块链互动

让我们开始详细说明,包括代码。

第1步:安装CMDER

实际上,这是传统Windows命令提示符的替代品。我个人不喜欢命令提示符,因为它缺乏选项和缺乏吸引力的用户界面。如果你愿意,可以继续使用命令提示符或将CMDER下载到C驱动器中的任何文件夹。

访问http://cmder.net/下载CMDER。

下载后,只需双击cmder.exe文件即可打开CMDER(它不是安装文件,而是一个程序)。当你第一次运行CMDER时,系统会要求你授予在计算机中进行更改的权限。只是授予权限,然后你就可以使用CMDER了。

第2步:安装Node.js和NPM

转到官方Node.js网站并下载Node.js.然后安装它。NPM将与Node.js一起自动安装。NPM将帮助我们下载和安装Windows构建工具。此外,Node.js和NPM将帮助我们使用以太坊区块链(如构建脚本)做很多事情。

Node.js网站:https://nodejs.org/en/

安装完成后,打开CMDER并输入以下代码检查它们是否正常工作。

node -v

npm -v

你应该能够看到每个程序的版本号作为命令输出的结果。

大多数时候,你得到的NPM版本可能会过时,因为这会经常更新。因此,请在CMDER中使用以下命令将NPM升级到最新版本。

npm install npm@latest -g
第3步:安装Windows构建工具

通过安装Windows构建工具,你将能够创建运行web3.py的必要环境,这有助于与以太坊区块链进行交互。所以我们这样做吧。首先使用管理员模式打开Windows Powershell。(不要使用命令提示符或CMDER,因为它会提示你有错误)

现在我们需要输入以下代码并按Enter键以安装这些Windows构建工具。

npm install --global --production windows-build-tools

这可能需要几分钟才能完成。

NPM将在此步骤中安装Python 2.7。但是,我们需要Python 3.5或更高版本才能使用Web3.py。

第4步:安装Python最新版本

转到官方Python网站并下载适用于Windows的最新3.x可执行版本并运行安装文件。

Python下载页面:https://www.python.org/downloads/windows/

勾选在Python安装步骤中为所有用户选项添加Python到PATH选项和安装启动程序。

在下一步中勾选pip和py启动器选项并安装Python。

Python和pip都应该正常工作了,这样继续Web3.py安装。因此,请检查在CMDER中输入以下命令:

python -v

它将运行Python,并应显示如下所示。

你可以使用以下代码退出Python:

exit()

现在让我们看看pip是否正常工作。

使用CMDER中的以下代码:

pip -v

如果你得到如下所示的响应,它可以正常工作。

第5步:安装Web3.py

你可以在CMDER中使用以下命令轻松安装web3.py:

pip install web3

第6步:安装iPython

我们需要一个python解释器,如ipython来运行web3.py代码。我们来安装吧。

在CMDER中输入以下命令:

pip install ipython

第7步:创建Infura帐户

现在我们需要在Infura创建一个帐户才能连接到以太坊区块链。

访问infura.io并免费注册一个帐户。验证完电子邮件地址后,就可以登录主页面了。现在只需要在ENDPOINT部分下可用的URL即可。如果需要连接到主网络,请选择该选项并复制该URL。

第8步:启用与以太坊区块链交互

从Infura获得URL后。现在打开CMDER并输入以下代码:

ipython

from web3 import Web3

web3 = Web3(Web3.HTTPProvider("https://mainnet.infura.io/xxxxxxxxxxxxxxxxx"))

将URL替换为您的个人infura URL

如果在修改上述命令后没有发生错误,那现在可以欢呼,你可以与以太坊区块链进行交互。

让我们测试一下我们是否真可以与以太坊区块链进行交互。

让我们输入以下代码以获取最新的块编号:

web3.eth.blockNumber

你应该获得最新的块编号,如下所示:

这意味着你现在可以与以太坊区块链进行交互。

你可以使用以下命令退出ipython

exit()

请注意,每次重新运行ipython时,都必须再次使用此步骤的前三个命令。

我希望本教程介绍了通过Infura在Windows操作系统中设置托管以太坊节点的基本步骤。

分享一些以太坊区块链相关的交互式在线编程实战教程:

python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。

汇智网原创翻译,转载请标明出处。这里是原文Python Web3.py和Infura Windows中设置以太坊托管节点

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/44909.html

相关文章

  • 如何利用PythonWeb3.pyInfuraWindows中设托管以太节点

    摘要:第步启用与以太坊区块链交互从获得后。我希望本教程介绍了通过在操作系统中设置托管以太坊节点的基本步骤。这里是原文和中设置以太坊托管节点 如果你想与以太坊区块链进行交互以获取最新区块的详细信息,可以使用以太网节点、本地节点或托管节点连接到以太坊区块链的交易信息或发送交易。由于有许多第三方插件和应用程序可用于执行此操作,你可能会认为我们为什么需要一个节点。如果要部署智能合约或使用脚本自动与智...

    tuantuan 评论0 收藏0
  • 如何利用PythonWeb3.pyInfuraWindows中设托管以太节点

    摘要:第步启用与以太坊区块链交互从获得后。我希望本教程介绍了通过在操作系统中设置托管以太坊节点的基本步骤。这里是原文和中设置以太坊托管节点 如果你想与以太坊区块链进行交互以获取最新区块的详细信息,可以使用以太网节点、本地节点或托管节点连接到以太坊区块链的交易信息或发送交易。由于有许多第三方插件和应用程序可用于执行此操作,你可能会认为我们为什么需要一个节点。如果要部署智能合约或使用脚本自动与智...

    AlphaGooo 评论0 收藏0
  • python借助web3py以太区块链节点交互的几种方式

    摘要:通信服务提供接口是如何与区块链交互的关键。这通常通过将请求提交给基于或套接字的服务器来完成。初始化时会发生自动检测有时,无法自动检测节点的位置。使用自动检测的示例一些节点提供超出标准的。是套接字的文件系统路径。 通信服务提供接口是web3如何与区块链交互的关键。接口接受JSON-RPC请求并返回响应。这通常通过将请求提交给基于HTTP或IPC套接字的服务器来完成。 如果你已经愉快地连接...

    booster 评论0 收藏0
  • python借助web3py以太区块链节点交互的几种方式

    摘要:通信服务提供接口是如何与区块链交互的关键。这通常通过将请求提交给基于或套接字的服务器来完成。初始化时会发生自动检测有时,无法自动检测节点的位置。使用自动检测的示例一些节点提供超出标准的。是套接字的文件系统路径。 通信服务提供接口是web3如何与区块链交互的关键。接口接受JSON-RPC请求并返回响应。这通常通过将请求提交给基于HTTP或IPC套接字的服务器来完成。 如果你已经愉快地连接...

    vboy1010 评论0 收藏0
  • Python以太区块链交互将数据存入数据

    摘要:是一个用于连接以太坊区块链的库。网络执行以太坊协议,该协议定义节点彼此之间的交互规则及网络上的智能合约。数据库设计下一步是设计数据库。 关于区块链介绍性的研讨会通常以易于理解的点对点网络和银行分类账这类故事开头,然后直接跳到编写智能合约,这显得非常突兀。因此,想象自己走进丛林,想象以太坊区块链是一个你即将研究的奇怪生物。今天我们将观察该生物,并与其进行交互然后将有关它的所有数据收集到一...

    dreambei 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<