Ubuntu安裝web3.py

這里使用最為方便的pip命令來安裝

pip install web3

如果在安裝過程中遇到圖中錯(cuò)誤驹止,可以使用以下命令解決

sudo apt-get install python-dev 
sudo apt-get install python3-dev 
sudo apt-get install libevent-dev

簡(jiǎn)單的測(cè)試

>>> from web3 import Web3, HTTPProvider, IPCProvider

# 基于HTTP方式建立連接
>>> web3 = Web3(HTTPProvider('http://localhost:8545'))

# 或者以IPC方式創(chuàng)建連接
>>> web3 = Web3(IPCProvider())
>>> web3.eth.blockNumber
4000000

使用pip安裝py-solc編譯合約

pip install py-solc

和一個(gè)簡(jiǎn)單的合約進(jìn)行交互

import json
import web3

from web3 import Web3, HTTPProvider, IPCProvider
from solc import compile_source
from web3.contract import ConciseContract

# Solidity source code
contract_source_code = '''
pragma solidity ^0.4.21;

contract Greeter {
    string public greeting;

    function Greeter() public {
        greeting = 'Hello';
    }

    function setGreeting(string _greeting) public {
        greeting = _greeting;
    }

    function greet() view public returns (string) {
        return greeting;
    }
}
'''

compiled_sol = compile_source(contract_source_code) # Compiled source code
contract_interface = compiled_sol['<stdin>:Greeter']

# web3.py instance
w3 = Web3(HTTPProvider('http://localhost:8545'))

# set pre-funded account as sender
w3.eth.defaultAccount = w3.eth.accounts[0]

# Instantiate and deploy contract
Greeter = w3.eth.contract(abi=contract_interface['abi'], bytecode=contract_interface['bin'])

# Submit the transaction that deploys the contract
tx_hash = Greeter.constructor().transact()

# Wait for the transaction to be mined, and get the transaction receipt
tx_receipt = w3.eth.waitForTransactionReceipt(tx_hash)

# Create the contract instance with the newly-deployed address
greeter = w3.eth.contract(
    address=tx_receipt.contractAddress,
    abi=contract_interface['abi'],
)

# Display the default greeting from the contract
print('Default contract greeting: {}'.format(
    greeter.functions.greet().call()
))

print('Setting the greeting to Nihao...')
tx_hash = greeter.functions.setGreeting('Nihao').transact()

# Wait for transaction to be mined...
w3.eth.waitForTransactionReceipt(tx_hash)

# Display the new greeting value
print('Updated contract greeting: {}'.format(
    greeter.functions.greet().call()
))

# When issuing a lot of reads, try this more concise reader:
reader = ConciseContract(greeter)
assert reader.greet() == "Nihao"

注意,如果進(jìn)行簡(jiǎn)單的合約測(cè)試胳螟,需要安裝testrpc或使用geth的私有鏈。這里使用http進(jìn)行連接。

w3 = Web3(HTTPProvider('http://localhost:8545')))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末浮毯,一起剝皮案震驚了整個(gè)濱河市级零,隨后出現(xiàn)的幾起案子断医,更是在濱河造成了極大的恐慌,老刑警劉巖奏纪,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鉴嗤,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡序调,警方通過查閱死者的電腦和手機(jī)醉锅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來发绢,“玉大人硬耍,你說我怎么就攤上這事”呔疲” “怎么了经柴?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)墩朦。 經(jīng)常有香客問我坯认,道長(zhǎng),這世上最難降的妖魔是什么氓涣? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任牛哺,我火速辦了婚禮,結(jié)果婚禮上春哨,老公的妹妹穿的比我還像新娘荆隘。我一直安慰自己,他們只是感情好赴背,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布椰拒。 她就那樣靜靜地躺著晶渠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪燃观。 梳的紋絲不亂的頭發(fā)上褒脯,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音缆毁,去河邊找鬼番川。 笑死,一個(gè)胖子當(dāng)著我的面吹牛脊框,可吹牛的內(nèi)容都是我干的颁督。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼浇雹,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼沉御!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起昭灵,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤吠裆,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后烂完,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體试疙,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年抠蚣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了祝旷。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡柱徙,死狀恐怖缓屠,靈堂內(nèi)的尸體忽然破棺而出奇昙,到底是詐尸還是另有隱情护侮,我是刑警寧澤,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布储耐,位于F島的核電站羊初,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏什湘。R本人自食惡果不足惜长赞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望闽撤。 院中可真熱鬧得哆,春花似錦、人聲如沸哟旗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至饱亮,卻和暖如春矾芙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背近上。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工剔宪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人壹无。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓葱绒,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親斗锭。 傳聞我的和親對(duì)象是個(gè)殘疾皇子哈街,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348