这篇是用来记录一下安装web3.py过程中踩过的坑。
- 使用
pip install web3
命令可以安装web3。
报错如下:
刚开始以为是bitarray和lru-dict这两个库安装失败,然后去https://www.cnpython.com/pypi/lru-dict下载了压缩包,但是用这个压缩包不知道为什么没有下载成功,后来又看了一下命令行输出的错误信息和其他大佬的博客,发现可能主要问题是这句
“ LINK : fatal error LNK1158: cannot run ‘rc.exe’
error: command ‘C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\x86_amd64\link.exe’ failed with exit status 1158”
解决办法是:
首先,进入 C:\Program Files (x86)\Windows Kits\8.1\bin\x86,找到并复制这两个文件:rc.exe 和 rcdll.dll,然后粘贴到:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
- 使用
pip install web3
命令成功安装。如果网速较慢可以使用Pip install web3 -ihttps://pypi.tuna.tsinghua.edu.cn/simple
命令用清华镜像安装。 - 接下来测试一下。
首先在命令行输入ganache-cli -p 7545
然后新建一个python文件,输入以下代码:
from web3 import Web3
w3 = Web3(Web3.HTTPProvider('http://127.0.0.1:7545'))
print(w3.isConnected())
- 运行结果为:
- 最后因为pycharm的python interpreter为D:\Anocanda\anocanda\envs\tensorflow\python.exe(python3.6),而我在命令行安装web3的时候以为只要转到D:\Anocanda\anocanda\envs\tensorflow目录下就可以下载到当前目录下的Lib\site-packages中,然后pycharm环境下运行
from web3 import Web3
就不会报错。
但是我发现web3居然下载到了D:\Anocanda\anocanda\Lib\site-packages(python3.8)目录下边,在pycharm里import web3
还是会报错,后来才知道如果要用python3.6安装web3,就要先进入python3.6所在的Scripts目录下也就是D:\Anocanda\anocanda\envs\tensorflow\Scripts下执行pip install web3
才行。
好了,先就这样吧,之后遇到问题再记录~