Python 升级到 Python 3.5.2 后 jsonrpclib 不工作

Python jsonrpclib not working after upgrade to Python 3.5.2

我之前安装了 Python 2.7 并且正在这样调用:

api = jsonrpclib.Server('my host')
api.someFunctionCall()

然后我升级到 Python 3.5.2,现在当我 运行 上面的代码时,我收到了这条消息:

Traceback (most recent call last):
  File "C:\login\login.py", line 1, in <module>
    import jsonrpclib
 File "C:\Python3.5.2\lib\site-packages\jsonrpclib\__init__.py", line 5, in  <module>
from jsonrpclib.jsonrpc import Server, MultiCall, Fault
ImportError: No module named 'xmlrpclib'

我检查了我的安装,我确实有 xmlrpc 库:

c:\Python3.5.2\Lib\xmlrpc

我做错了什么?

Python 3.x 已重新定位 xmlrpclib 模块。根据 Python 2.7 xmlrpclib documentation:

"The xmlrpclib module has been renamed to xmlrpc.client in Python 3. The 2to3 tool will automatically adapt imports when converting your sources to Python 3."

看起来 jsonrpclib 的作者有一个 Python 3 支持的未决问题,但一年内没有回应或接受拉取请求。您可能想给 jsonrpclib-pelix 叉子看一下 Python 3 支持。