Python Web3.py和Infura Windows中設定託管以太坊節點
如果你想與以太坊區塊鏈進行互動以獲取最新區塊的詳細資訊,可以使用乙太網節點、本地節點或託管節點連線到以太坊區塊鏈的交易信息或傳送交易。由於有許多第三方外掛和應用程式可用於執行此操作,你可能會認為我們為什麼需要一個節點。如果要部署智慧合約或使用指令碼自動與智慧合約互動,則需要設定節點,而當前的第三方外掛或應用程式可能無法實現這一點。
如果你選擇使用像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驅動器中的任何資料夾。
訪問 ofollow,noindex">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作業系統中設定託管以太坊節點的基本步驟。
======================================================================
分享一些以太坊、EOS、比特幣等區塊鏈相關的互動式線上程式設計實戰教程:
python以太坊,主要是針對python工程師使用web3.py進行區塊鏈以太坊開發的詳解。
- java以太坊開發教程,主要是針對java和android程式設計師進行區塊鏈以太坊開發的web3j詳解。
- php以太坊,主要是介紹使用php進行智慧合約開發互動,進行賬號建立、交易、轉賬、代幣開發以及過濾器和交易等內容。
- 以太坊入門教程,主要介紹智慧合約與dapp應用開發,適合入門。
- 以太坊開發進階教程,主要是介紹使用node.js、mongodb、區塊鏈、ipfs實現去中心化電商DApp實戰,適合進階。
- C#以太坊,主要講解如何使用C#開發基於.Net的以太坊應用,包括賬戶管理、狀態與交易、智慧合約開發與互動、過濾器和交易等。
- EOS教程,本課程幫助你快速入門EOS區塊鏈去中心化應用的開發,內容涵蓋EOS工具鏈、賬戶與錢包、發行代幣、智慧合約開發與部署、使用程式碼與智慧合約互動等核心知識點,最後綜合運用各知識點完成一個便籤DApp的開發。
- java比特幣開發教程,本課程面向初學者,內容即涵蓋比特幣的核心概念,例如區塊鏈儲存、去中心化共識機制、金鑰與指令碼、交易與UTXO等,同時也詳細講解如何在Java程式碼中整合比特幣支援功能,例如建立地址、管理錢包、構造裸交易等,是Java工程師不可多得的比特幣開發學習課程。
- php比特幣開發教程,本課程面向初學者,內容即涵蓋比特幣的核心概念,例如區塊鏈儲存、去中心化共識機制、金鑰與指令碼、交易與UTXO等,同時也詳細講解如何在Php程式碼中整合比特幣支援功能,例如建立地址、管理錢包、構造裸交易等,是Php工程師不可多得的比特幣開發學習課程。
匯智網原創翻譯,轉載請標明出處。這裡是 原文