以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问下 这段Python 在 foxtable执行代码怎么写  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=170763)

--  作者:xa139
--  发布时间:2021/8/6 15:49:00
--  请问下 这段Python 在 foxtable执行代码怎么写
# -*- encoding: utf-8 -*-

import requests
from urllib import parse
import base64
import json
import uuid

API_HOST = "http://www.XXXXXXXX:XXXX/XXX/XXXXXXX/"
URL_TO_UPLOAD = "ydy-services/upload"
URL_TO_DOWNLOAD = "ydy-services/download"
URL_TO_RETRIEVE = "ydy-services/retrieve"


def upload_idcard_data_test():
    """
    接口示例: 身份证识别服务 任务上传
    :return:
    """
    # 示例图片地址
    SAMPLE_IMAGE_PATH = "./IDcard_sample.png"
    IDCARD_DOC_TYPE = "IDcard"
    with open(SAMPLE_IMAGE_PATH, "rb") as f:
        base64_data = base64.b64encode(f.read()).decode("utf-8")

    task_id = str(uuid.uuid4())[:10].replace("-", "")
    doc_id = str(uuid.uuid4())[:10].replace("-", "")
    file_id = str(uuid.uuid4())[:10].replace("-", "")

    payload = {
        "taskId": task_id,
        "documents": [
            {
                "docId": doc_id,
                "docType": IDCARD_DOC_TYPE,
                "files": [
                    {
                        "fileId": file_id,
                        "fileType": "PNG",
                        "file": base64_data
                    }
                ]
            }
        ]
    }
    url = parse.urljoin(API_HOST, URL_TO_UPLOAD)
    print(url)
    response = requests.post(url, data=json.dumps(payload))
    print(response.json())


def download_data_test(task_num=1):
    """
    接口示例: 根据任务数量下载
    :param task_num:
    :return:
    """
    payload = {
        "numOfTasks": str(task_num)
    }
    url = parse.urljoin(API_HOST, URL_TO_DOWNLOAD)
    response = requests.post(url, data=json.dumps(payload))
    print(response.json())
    return response.json()


def retrieve_data_test(task_ids=None):
    """
    根据task id 下载接口示例
    :param task_num:
    :return:
    """
    if task_ids is None:
        task_ids = ["f0a71b56a"]
    payload = {
        "taskIds": task_ids
    }
    url = parse.urljoin(API_HOST, URL_TO_RETRIEVE)
    response = requests.post(url, data=json.dumps(payload))
    print(response.json())
    return response.json()

if __name__ == "__main__":
    upload_common_data_test()
    upload_idcard_data_test()
    download_data_test(2)
    retrieve_data_test()


--  作者:有点蓝
--  发布时间:2021/8/6 15:53:00
--  
调用接口?把接口的开发文档发上来看看
--  作者:xa139
--  发布时间:2021/8/6 16:06:00
--  


--  作者:xa139
--  发布时间:2021/8/6 16:10:00
--  
图片点击可在新窗口打开查看
--  作者:有点蓝
--  发布时间:2021/8/6 16:13:00
--  
要加密的,没看懂加密方法说明。找有没有.net的实例代码
--  作者:xa139
--  发布时间:2021/8/6 16:33:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:文档.rar


--  作者:xa139
--  发布时间:2021/8/6 16:43:00
--  
python 里好像就是上传一个json不太懂 pathon
--  作者:xa139
--  发布时间:2021/8/6 16:50:00
--  
加密就是用的 base64吧
--  作者:有点蓝
--  发布时间:2021/8/6 17:11:00
--  
python 我也不懂。找对方要.net的实例