如何将Postman中的API响应导出为布局规范的CSV/XLS文件
Reed API数据导出结构化电子表格解决方案
核心原因:Reed API返回的职位数据全部嵌套在顶层results数组中,Postman默认导出功能不会自动展开该数组结构,因此会出现所有数据挤压在同一行/同一单元格的问题。
方法1:Postman内置脚本转换(无需额外工具)
- 发送你的Reed API请求,确认拿到正常返回结果
- 切换到请求编辑区的「Tests」标签页,粘贴如下脚本:
// 提取职位数据数组 const jobList = pm.response.json().results; if (jobList?.length) { // 生成表头 const headers = Object.keys(jobList[0]).join(','); // 逐行处理职位数据,处理特殊字符避免CSV格式错乱 const rows = jobList.map(job => { return Object.values(job).map(val => { if (val == null) return ''; if (typeof val === 'string') { const cleaned = val.replace(/ /g, ' ').replace(/"/g, '""'); return `"${cleaned}"`; } return val; }).join(','); }); // 拼接完整CSV内容并输出到控制台 const csv = [headers, ...rows].join('\n'); console.log(csv); }
- 重新发送请求,点击Postman左下角「Console」按钮打开控制台,就能看到生成好的结构化CSV内容,全选复制后粘贴到表格工具,或直接保存为
.csv后缀文件即可使用。
方法2:Python脚本处理(适合批量/多页数据导出)
如果需要频繁拉取、导出大量数据,可以用Python脚本一步完成请求+导出:
- 先安装依赖库:
pip install requests pandas openpyxl - 运行如下脚本:
import requests import pandas as pd # 替换为你在Reed开发者后台获取的API密钥 API_KEY = "YOUR_API_KEY" # 按需修改搜索参数 req_params = { "keywords": "accountant", "location": "london", "resultsToTake": 100 # 单页最大返回100条 } # 发起API请求 resp = requests.get( url = "https://www.reed.co.uk/api/1.0/search", params = req_params, auth = (API_KEY, "") ) resp.raise_for_status() # 提取数据导出 job_df = pd.DataFrame(resp.json()["results"]) # 导出为CSV格式 job_df.to_csv("reed_job_list.csv", index=False, encoding="utf_8_sig") # 如需直接导出Excel,替换为下行即可 # job_df.to_excel("reed_job_list.xlsx", index=False)
生成的文件自动对应你要的格式:每列为职位字段(jobId、employerName等),每行为单条职位条目。
注意事项
jobDescription字段自带HTML实体,如需纯文本可以额外添加HTML标签清洗逻辑- 如需拉取全量数据,可添加
page参数循环请求多页,合并所有结果后再导出即可。
内容的提问来源于stack exchange,提问作者philt
相关产品推荐
相关产品推荐

