python中的JsonRpc客户端
Posted
技术标签:
【中文标题】python中的JsonRpc客户端【英文标题】:JsonRpc client in python 【发布时间】:2014-10-09 03:06:33 【问题描述】:我正在尝试通过 python 使用 StanfordParser,并且我正在使用它的 this 实现,它基本上是一个远程服务器,可以根据我的理解响应 json 请求。 他们在启动服务器后为客户端推荐以下实现模板
import jsonrpc
from simplejson import loads
server = jsonrpc.ServerProxy(jsonrpc.JsonRpc20(), jsonrpc.TransportTcpIp(addr=("127.0.0.1", 8080)))
result = loads(server.parse("Hello world. It is so beautiful"))
print "Result", result
但是我没有使用 jsonrpc 的经验,我只是使用 pip install json-rpc
安装它。但这似乎不起作用,因为当我尝试运行示例客户端时,出现以下异常。
Traceback (most recent call last):
File "/root/PycharmProjects/testingStanfordParser/parser.py", line 1, in <module>
import jsonrpc
File "/usr/local/lib/python2.7/dist-packages/jsonrpc/__init__.py", line 6, in <module>
from .manager import JSONRPCResponseManager
File "/usr/local/lib/python2.7/dist-packages/jsonrpc/manager.py", line 12, in <module>
from .jsonrpc1 import JSONRPC10Response
File "/usr/local/lib/python2.7/dist-packages/jsonrpc/jsonrpc1.py", line 3, in <module>
from .base import JSONRPCBaseRequest, JSONRPCBaseResponse
File "/usr/local/lib/python2.7/dist-packages/jsonrpc/base.py", line 1, in <module>
from .utils import JSONSerializable
File "/usr/local/lib/python2.7/dist-packages/jsonrpc/utils.py", line 31, in <module>
class DatetimeDecimalEncoder(json.JSONEncoder):
AttributeError: 'module' object has no attribute 'JSONEncoder'
【问题讨论】:
我的错,他们用额外的方法提供了自己版本的 jsonrpc.py :) 你应该让评论成为答案,因为它是正确的答案 【参考方案1】:如前所述,他们有自己的 jsonrpc.py 实现。 可以通过以下链接下载。
https://github.com/dasmith/stanford-corenlp-python/blob/master/jsonrpc.py
【讨论】:
以上是关于python中的JsonRpc客户端的主要内容,如果未能解决你的问题,请参考以下文章