jsonrpc2.0如何提取d

2024-10-02 10:20:31 发布

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

我试图从一个内部项目中提取数据(http://192.168.1.15:8082)。它使用json-rpc 2.0。一开始,我尝试使用beautilsoup检索信息,因为它显示在屏幕上,但这不起作用,我得到的只是一堆o函数代码。我不熟悉json-rpc。欢迎任何帮助。在

网站上打印的回复数据如下:

回应:

{"jsonrpc":"2.0","result":[{"uri":"Geometry","time":1537525006,"geo":{"type":"characteristic","id":125,"information2":{"type":"Point","Weight":[15.362154,196.623546]}

如何检索这些信息?在

谢谢大家

尼克


Tags: 数据项目函数代码信息jsonhttp屏幕
1条回答
网友
1楼 · 发布于 2024-10-02 10:20:31

看看requestshttps://pypi.org/project/requests

为了遵守标准,您需要在您的请求中加入payload,否则它只是一个普通的post

import requests
import json

def main():
    url = "http://192.168.1.15:8082/jsonrpc"
    headers = {'content-type': 'application/json'}

    # Example echo method
    payload = {
        "method": "your_method_name",
        "jsonrpc": "2.0",
        "id": 0,
    }
    response = requests.post(
        url, data=json.dumps(payload), headers=headers).json()

    print(response)
    print(response['result']['uri'])
    print(response['result']['time'])
    print(response['result']['geo'])
    print(response['result']['geo']['id'])
    print(response['result']['geo']['type'])
    print(response['result']['geo']['information2'])
    print(response['result']['geo']['information2']['type'])
    print(response['result']['geo']['information2']['Weight'])

if __name__ == "__main__":
    main()

如果您需要特定的json\u-rpc,那么看看jsonrpc_requestshttps://pypi.org/project/jsonrpc-requests/
请注意,在这个例子中,如何为您处理响应的反序列化,您只需返回方法调用的结果,而不是整个响应。在

^{pr2}$

相关问题 更多 >

    热门问题