当前位置: 首页 > news >正文

Python3:多行文本内容转换为标准的cURL请求参数值

背景

在最近的工作中,经常需要处理一些接口请求的参数,参数来源形式很多,可能是Excel、知识库文档等,有些数据形式比较复杂,比如多行或者包含很多不同的字符,示例如下:

**客服质检分析指引**  
作为客服质检专家,您的任务是识别并分析客户与人工客服的对话内容,并提炼出结构化的信息。注意仅输出JSON结果,不需要输出其他任何分析信息。详细要求如下:  1. 输出格式:  
```json  
{  "problems": [{  "description": "问题描述",  "phenomenon": "客户遇到的具体现象或情况",  "resolution": "解决方案的详细描述,包括所有步骤",  "classification": "根据问题性质选择的分类标签,必须是分类列表中的某一类。", "status": "已解决/未解决/不明确",  "result": "问题解决结果或进一步跟进的说明"  }],  "csInfo": {  "service_attitude": "服务态度评分(1-5分)",  "service_satisfaction": "客户满意度评分(1-5分)"  }  
}2.根据给定的JSON结构,构建JSON结果:
理解对话内容:首先,您需要阅读和理解客户与人工客服之间的对话内容。
提取问题信息:
- 问题描述:识别客户提出的问题或需求的关键描述。
- 现象描述:记录客户遇到的具体现象或情况。
- 解决方案:注意客服提供的所有解决方案,并客观、详细地描述每个步骤。
- 分类标签:从给定的分类列表中精准选取最贴合问题问题描述或现象的标签,必要时辅以解决方案内容判定,确保标签属于给定列表。
分类列表:
- 操作系统/组件调试/文件管理
- 操作系统/组件调试/系统时间...省略部分内容...

在一些编程软件里面一般无需额外处理,比如在Python3中我们可以使用 """xxxx""" 处理多行文本,但直接复制作为Postman请求的参数时,会出现格式问题,如下:

解决方案

应该有很多种,下面给出了一种我常用的方案,比如在Python3中,直接使用 json.dumps 完成字符串处理。

import jsonprompt = """
**客服质检分析指引**  
作为客服质检专家,您的任务是识别并分析客户与人工客服的对话内容,并提炼出结构化的信息。注意仅输出JSON结果,不需要输出其他任何分析信息。详细要求如下:  1. 输出格式:  
```json  
{  "problems": [{  "description": "问题描述",  "phenomenon": "客户遇到的具体现象或情况",  "resolution": "解决方案的详细描述,包括所有步骤",  "classification": "根据问题性质选择的分类标签,必须是分类列表中的某一类。", "status": "已解决/未解决/不明确",  "result": "问题解决结果或进一步跟进的说明"  }],  "csInfo": {  "service_attitude": "服务态度评分(1-5分)",  "service_satisfaction": "客户满意度评分(1-5分)"  }  
}2.根据给定的JSON结构,构建JSON结果:
理解对话内容:首先,您需要阅读和理解客户与人工客服之间的对话内容。
提取问题信息:
- 问题描述:识别客户提出的问题或需求的关键描述。
- 现象描述:记录客户遇到的具体现象或情况。
- 解决方案:注意客服提供的所有解决方案,并客观、详细地描述每个步骤。
- 分类标签:从给定的分类列表中精准选取最贴合问题问题描述或现象的标签,必要时辅以解决方案内容判定,确保标签属于给定列表。
分类列表:
- 操作系统/组件调试/文件管理
- 操作系统/组件调试/系统时间...省略部分内容...
"""# 转换为JSON字符串
json_body = json.dumps({"prompt": prompt}, ensure_ascii=False)# 打印转换后的字符串
print(json_body)

将输出的参数复制到Postman中,可以看到参数已经合法。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • UDP+TCP
  • leetcode242:有效的字母异位词
  • 【精选】基于协同过滤算法的小说推荐系统(定制参考分享)
  • 【51单片机】ds18b20驱动,11.0592MHZ,使用DS18b20
  • 【运维】linux使用systemd手动部署与管理服务进程,以webhook回调告警为例(附常用linux进程/端口状况查看命令)
  • C#发邮件时如何确保邮件内容的安全和隐私?
  • 猫用空气净化器好不好?养猫推荐宠物空气净化器品牌
  • uniapp点击预览图片,两种效果
  • ES6解构赋值详解;全面掌握:JavaScript解构赋值的终极指南
  • 聚类分析|距离与相似系数|层次聚类|K均值聚类|SPSS及Matlab
  • SQL 调优最佳实践笔记
  • Spring + Boot + Cloud + JDK8 + Elasticsearch 单节点 模式下实现全文检索高亮-分页显示 快速入门案例
  • Spring Boot项目热部署
  • Git克隆仓库太大导致拉不下来的解决方法 fatal: fetch-pack: invalid index-pack output
  • 凤凰花:绚烂花语与独特魅力
  • [deviceone开发]-do_Webview的基本示例
  • 「译」Node.js Streams 基础
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • Android优雅地处理按钮重复点击
  • bearychat的java client
  • ES6语法详解(一)
  • fetch 从初识到应用
  • in typeof instanceof ===这些运算符有什么作用
  • iOS | NSProxy
  • IP路由与转发
  • JavaScript设计模式之工厂模式
  • Java方法详解
  • Js基础知识(四) - js运行原理与机制
  • log4j2输出到kafka
  • Node项目之评分系统(二)- 数据库设计
  • PAT A1017 优先队列
  • Promise初体验
  • tensorflow学习笔记3——MNIST应用篇
  • Vim Clutch | 面向脚踏板编程……
  • 服务器从安装到部署全过程(二)
  • 关于Flux,Vuex,Redux的思考
  • 基于web的全景—— Pannellum小试
  • 悄悄地说一个bug
  • 区块链将重新定义世界
  • 使用 QuickBI 搭建酷炫可视化分析
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 《天龙八部3D》Unity技术方案揭秘
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • ​ArcGIS Pro 如何批量删除字段
  • ​iOS安全加固方法及实现
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​Python 3 新特性:类型注解
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • $refs 、$nextTic、动态组件、name的使用
  • (¥1011)-(一千零一拾一元整)输出
  • (1)Nginx简介和安装教程
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (离散数学)逻辑连接词
  • (六)Flink 窗口计算
  • (篇九)MySQL常用内置函数