使用命令lin中的Electrum时没有模块名“xmlrpclib”

2024-06-16 22:54:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我刚从Electrum.org的命令行安装了一个比特币钱包

以下是我如何将其安装到我的用户帐户目录中。。/主页/用户/。。。

sudo pip3 install https://download.electrum.org/2.8.2/Electrum-2.8.2.tar.gz

安装时没有问题。

当我试图使用命令行运行软件时 electrum或者如果我尝试electrum help我会得到这个重要的错误

(这是他们的文件http://docs.electrum.org/en/latest/cmdline.html

ImportError: No module named 'xmlrpclib'

这是回溯如果你想复制它

File "/usr/local/bin/electrum", line 71, in check_imports
import jsonrpclib

File "/usr/local/lib/python3.5/dist-packages/jsonrpclib/__init__.py", line 5, in <module>
from jsonrpclib.jsonrpc import Server, MultiCall, Fault

File "/usr/local/lib/python3.5/dist-packages/jsonrpclib/jsonrpc.py", line 50, in <module> 
from xmlrpclib import Transport as XMLTrasnport

我已经做了

sudo apt-get update

sudo apt-get upgrade

sudo pip install xmlrpclib

但没有结果。

如果有人能提供一些值得赞赏的见解。


Tags: 命令行用户inorgimportusrlocalline
1条回答
网友
1楼 · 发布于 2024-06-16 22:54:41

The xmlrpclib module has been renamed to xmlrpc.client in Python 3.

所以,如果你想使用xmlrpclib

import xmlrpclib

替换为:

from xmlrpc import client

这个项目已经两年没有更新了,所以您可以找到这个文件/usr/local/lib/python3.5/dist-packages/jsonrpclib/jsonrpc.py并更改

from xmlrpclib import Transport as XMLTransport
from xmlrpclib import SafeTransport as XMLSafeTransport
from xmlrpclib import ServerProxy as XMLServerProxy
from xmlrpclib import _Method as XML_Method

from xmlrpc.client import Transport as XMLTransport
from xmlrpc.client import SafeTransport as XMLSafeTransport
from xmlrpc.client import ServerProxy as XMLServerProxy
from xmlrpc.client import _Method as XML_Method 

也可以使用2to3来转换源:

2to3 -w jsonrpc.py

然后改变

line 168 from http.client import HTTP, HTTPConnection
line 186     class UnixHTTP(HTTP):

line 168 from http.client import HTTPConnection
line 186     class UnixHTTP(HTTPConnection):

希望这有帮助。

相关问题 更多 >