之前写过一篇文章【Jmeter篇】后置处理器之正则提取器、Json提取器 不是很完善,今天我们再来写一篇json提取器进行补充说明。
访问链家二手房列表接口sh.lianjia.com/api/newhouserecommend?type=1&query=https%3A%2F%2Fsh.lianjia.com%2Fershoufang%2F%3Futm_source%3Dbaidu%26utm_medium%3Dpinzhuan%26utm_term%3Dbiaoti%26utm_content%3Dbiaotimiaoshu%26utm_campaign%3Dsousuo%26ljref%3Dpc_sem_baidu_ppzq_x响应数据如下:
{
"errno": 0,
"uniq_id": "010A1A64033508FEC06E01AA304A9913",
"data": [
{
"outlet_center_tel": "",
"cover_pic": "https:\/\/image1.ljcdn.com\/hdic-resblock\/prod-88c98145-9d1a-4537-a104-0cc0f1f76793phptMcWGI",
"project_name": "zhxhgcbivyk",
"project_desc": "交通便利 标准写字楼",
"bizcircle_id": "613000314",
"show_price_confirm_time": "5天",
"discount_realpay": "0",
"special_tag": "",
"resblock_alias": "旭泾商务中心",
"price": "64000",
"checkin_start_date": null,
"id": "5020021484471818",
"min_frame_area": "0",
"decoration": "毛坯",
"carRatio": "1:",
"address_remark": "张杨路2389弄3号",
"allowance": "0",
"tags": [
],
"permit_all_ready": "1",
"has_virtual_view": "0",
"property_address": "张杨路崮山路路口",
"build_id": "5020021484471818",
"process_status": "3",
"full_spell": "zhihuixuhuiguangchang",
"evaluate": [
],
"status": "2",
"resblock_frame_area": "",
"total_area": "350,000",
"scheme": "lianjia:\/\/newhouse\/detail?project_name=zhxhgcbivyk",
"address_desc": "张杨路2389弄3号",
"latitude": "31.247222",
"resblock_name": "置汇旭辉广场",
"build_name": "置汇旭辉广场",
"m_detail_url": "https:\/\/m.lianjia.com\/sh\/loupan\/p_zhxhgcbivyk\/",
"display_video_intro": "0",
"decorate_type": "2",
"house_type": "写字楼",
"avg_price_max": "0",
"total_price_max": "0",
"store_tel": "02133110033",
"prod": "1",
"address": "张杨路2389弄3号",
"store_addr": "张杨路2389弄",
"lowest_total_price": null,
"discount_value": "0",
"sale_status": "在售",
"show_price": "64000",
"pc_detail_url": "https:\/\/sh.fang.lianjia.com\/loupan\/p_zhxhgcbivyk\/",
"price_confirm_time": "2019-11-25 17:26:15",
"discount_type": "0",
"sale_status_color": "53CC9A",
"max_frame_inside_area": "0",
"resblock_desc": "",
"total_price_min": "0",
"virescence_area": "21,794.00",
"overground_car_num": "0",
"project_tags": [
],
"special_tags": [
],
"rooms": "",
"open_time": "2018-06-16",
"pid": "612414",
"show_price_unit": "元\/平",
"evaluate_status": "0",
"price_show_config": "1",
"view_url": "http:\/\/sh.fang.lianjia.com\/loupan\/p_zhxhgcbivyk\/",
"underground_car_num": "0",
"build_type": "107500000006",
"strategy_info": {
"fb_item_location": "0",
"fb_query_id": "010A1A64033508FEC06E01AA304A9913_08a921c1e00b42e1a7f0f22cb2aea32a10.26.64.70",
"fb_item_type": "xinfang_project_name",
"fb_strategy_id": "10000250",
"fb_response_ts": "1575195904",
"fb_context_id": "{\"req_source_type\":\"zhiying_pc\"}",
"fb_expo_id": "r15751959041236074463937839450",
"fb_item_detail": "zhxhgcbivyk",
"fb_ab_test_flag": "reco_rule-500012-default-default",
"fb_service_id": "500012"
},
"longitude": "121.560934",
"cover_size_pic": "https:\/\/image1.ljcdn.com\/hdic-resblock\/prod-88c98145-9d1a-4537-a104-0cc0f1f76793phptMcWGI!m_fill,w_280,h_210,l_rorate_logo",
"cubage_rate": "2.60",
"min_frame_inside_area": "0",
"is_exclusive": "0",
"frame_rooms": [
],
"site_area": "87,180",
"video_intro": [
],
"city_id": "310000",
"is_cooperation": "0",
"frame_rooms_desc": null,
"building_count": "1",
"district_name": "浦东",
"city_name": "上海市",
"house_type_color": "59A5EB",
"max_frame_area": "0",
"allowance_comm": "",
"administrative_address": "张杨路2389弄3号",
"virescence_rate": "25.00",
"part_num": "50",
"discount_info": "[]",
"total_price": "0",
"show_price_desc": "均价",
"average_price": "64000",
"special": {
"developer_special_comm": "",
"developer_special": [
],
"lianjia_special": [
],
"lianjia_special_comm": ""
},
"bizcircle_name": "洋泾",
"house_amount": "140",
"district_id": "310115",
"house_type_value": "107500000006"
},
{
"outlet_center_tel": "",
"cover_pic": "https:\/\/image1.ljcdn.com\/hdic-resblock\/prod-03121e45-2a19-4c63-a48d-971608ddb202phpPTGy2g",
"project_name": "jaxcspbjbxj",
"project_desc": "闵行龙茗路,靠近宜山路站",
"bizcircle_id": "611900071",
"show_price_confirm_time": "4天",
"discount_realpay": "0",
"special_tag": "",
"resblock_alias": "龙茗路商铺",
"price": "60000",
"checkin_start_date": null,
"id": "5020035410098507",
"min_frame_area": "0",
"decoration": "毛坯",
"carRatio": "1:",
"address_remark": "龙茗路2229号",
"allowance": "0",
"tags": [
],
"permit_all_ready": "0",
"has_virtual_view": "0",
"property_address": "",
"build_id": "5020035410098507",
"process_status": "3",
"full_spell": "jinganxinchengshangpu",
"evaluate": [
],
"status": "2",
"resblock_frame_area": "",
"total_area": "150,000",
"scheme": "lianjia:\/\/newhouse\/detail?project_name=jaxcspbjbxj",
"address_desc": "龙茗路2229号",
"latitude": "31.166744",
"resblock_name": "静安新城商铺",
"build_name": "静安新城商铺",
"m_detail_url": "https:\/\/m.lianjia.com\/sh\/loupan\/p_jaxcspbjbxj\/",
"display_video_intro": "0",
"decorate_type": "2",
"house_type": "商业",
"avg_price_max": "0",
"total_price_max": "0",
"store_tel": "02134316160",
"prod": "1",
"address": "龙茗路2229号",
"store_addr": "龙茗路2229号",
"lowest_total_price": null,
"discount_value": "0",
"sale_status": "在售",
"show_price": "60000",
"pc_detail_url": "https:\/\/sh.fang.lianjia.com\/loupan\/p_jaxcspbjbxj\/",
"price_confirm_time": "2019-11-27 10:38:51",
"discount_type": "0",
"sale_status_color": "53CC9A",
"max_frame_inside_area": "0",
"resblock_desc": "",
"total_price_min": "860",
"virescence_area": "3,000.00",
"overground_car_num": "-1",
"project_tags": [
],
"special_tags": [
],
"rooms": "",
"open_time": "2018-09-30",
"pid": "616443",
"show_price_unit": "元\/平",
"evaluate_status": "0",
"price_show_config": "1",
"view_url": "http:\/\/sh.fang.lianjia.com\/loupan\/p_jaxcspbjbxj\/",
"underground_car_num": "-1",
"build_type": "107500000007",
"strategy_info": {
"fb_item_location": "2",
"fb_query_id": "010A1A64033508FEC06E01AA304A9913_08a921c1e00b42e1a7f0f22cb2aea32a10.26.64.70",
"fb_item_type": "xinfang_project_name",
"fb_strategy_id": "10000250",
"fb_response_ts": "1575195904",
"fb_context_id": "{\"req_source_type\":\"zhiying_pc\"}",
"fb_expo_id": "r15751959041236074463937839452",
"fb_item_detail": "jaxcspbjbxj",
"fb_ab_test_flag": "reco_rule-500012-default-default",
"fb_service_id": "500012"
},
"longitude": "121.390392",
"cover_size_pic": "https:\/\/image1.ljcdn.com\/hdic-resblock\/prod-03121e45-2a19-4c63-a48d-971608ddb202phpPTGy2g!m_fill,w_280,h_210,l_rorate_logo",
"cubage_rate": "0.70",
"min_frame_inside_area": "0",
"is_exclusive": "0",
"frame_rooms": [
],
"site_area": "100,000",
"video_intro": [
],
"city_id": "310000",
"is_cooperation": "0",
"frame_rooms_desc": null,
"building_count": "4",
"district_name": "闵行",
"city_name": "上海市",
"house_type_color": "B199FF",
"max_frame_area": "0",
"allowance_comm": "",
"administrative_address": "龙茗路2229号",
"virescence_rate": "3.00",
"part_num": "50",
"discount_info": "[]",
"total_price": "0",
"show_price_desc": "均价",
"average_price": "60000",
"special": {
"developer_special_comm": "",
"developer_special": [
],
"lianjia_special": [
],
"lianjia_special_comm": ""
},
"bizcircle_name": "静安新城",
"house_amount": "24",
"district_id": "310112",
"house_type_value": "107500000007"
},
{
"outlet_center_tel": "",
"cover_pic": "https:\/\/image1.ljcdn.com\/newhouse-user-image\/109cd41e737979eefce828368e1ddf58.png",
"project_name": "xcskysmybjoyh",
"project_desc": "佘山地铁站附近优质房源",
"bizcircle_id": "613000336",
"show_price_confirm_time": "2天",
"discount_realpay": "0",
"special_tag": "",
"resblock_alias": "塘和家园栀子锦苑,樾山明月",
"price": "55000",
"checkin_start_date": null,
"id": "5020020846797452",
"min_frame_area": "119",
"decoration": "毛坯",
"carRatio": "1:",
"address_remark": "洞塔路400弄",
"allowance": "0",
"tags": [
"近主干道",
"人车分流"
],
"permit_all_ready": "1",
"has_virtual_view": "0",
"property_address": "洞塔路400弄, 洞坤路168弄",
"build_id": "5020020846797452",
"process_status": "3",
"full_spell": "xinchengshangkunyueshanmingyue",
"evaluate": [
],
"status": "2",
"resblock_frame_area": "建面 119-176㎡",
"total_area": "630,000",
"scheme": "lianjia:\/\/newhouse\/detail?project_name=xcskysmybjoyh",
"address_desc": "洞塔路400弄",
"latitude": "31.105377",
"resblock_name": "新城上坤樾山明月",
"build_name": "新城上坤樾山明月",
"m_detail_url": "https:\/\/m.lianjia.com\/sh\/loupan\/p_xcskysmybjoyh\/",
"display_video_intro": "0",
"decorate_type": "2",
"house_type": "别墅",
"avg_price_max": "0",
"total_price_max": "0",
"store_tel": "02158809888",
"prod": "1",
"address": "洞塔路400弄",
"store_addr": "嘉松南路3888弄",
"lowest_total_price": null,
"discount_value": "0",
"sale_status": "在售",
"show_price": "55000",
"pc_detail_url": "https:\/\/sh.fang.lianjia.com\/loupan\/p_xcskysmybjoyh\/",
"price_confirm_time": "2019-11-29 11:29:03",
"discount_type": "0",
"sale_status_color": "53CC9A",
"max_frame_inside_area": "0",
"resblock_desc": "",
"total_price_min": "775",
"virescence_area": "1,142,860.00",
"overground_car_num": "596",
"project_tags": [
{
"color": "",
"id": "43",
"desc": "近主干道"
},
{
"color": "",
"id": "52",
"desc": "人车分流"
}
],
"special_tags": [
],
"rooms": "",
"open_time": "2019-03-25",
"pid": "625255",
"show_price_unit": "元\/平",
"evaluate_status": "0",
"price_show_config": "1",
"view_url": "http:\/\/sh.fang.lianjia.com\/loupan\/p_xcskysmybjoyh\/",
"underground_car_num": "0",
"build_type": "107500000004",
"strategy_info": {
"fb_item_location": "4",
"fb_query_id": "010A1A64033508FEC06E01AA304A9913_08a921c1e00b42e1a7f0f22cb2aea32a10.26.64.70",
"fb_item_type": "xinfang_project_name",
"fb_strategy_id": "10000250",
"fb_response_ts": "1575195904",
"fb_context_id": "{\"req_source_type\":\"zhiying_pc\"}",
"fb_expo_id": "r15751959041236074463937839454",
"fb_item_detail": "xcskysmybjoyh",
"fb_ab_test_flag": "reco_rule-500012-default-default",
"fb_service_id": "500012"
},
"longitude": "121.238554",
"cover_size_pic": "https:\/\/image1.ljcdn.com\/newhouse-user-image\/109cd41e737979eefce828368e1ddf58.png!m_fill,w_280,h_210,l_rorate_logo",
"cubage_rate": "0.85",
"min_frame_inside_area": "0",
"is_exclusive": "0",
"frame_rooms": [
],
"site_area": "400,000",
"video_intro": [
],
"city_id": "310000",
"is_cooperation": "0",
"frame_rooms_desc": "2\/3居",
"building_count": "5",
"district_name": "松江",
"city_name": "上海市",
"house_type_color": "8FD24E",
"max_frame_area": "176",
"allowance_comm": "",
"administrative_address": "洞塔路400弄, 洞坤路168弄",
"virescence_rate": "35.00",
"part_num": "50",
"discount_info": "[]",
"total_price": "7750000",
"show_price_desc": "均价",
"average_price": "55000",
"special": {
"developer_special_comm": "",
"developer_special": [
],
"lianjia_special": [
],
"lianjia_special_comm": ""
},
"bizcircle_name": "泗泾",
"house_amount": "67",
"district_id": "310117",
"house_type_value": "107500000004"
}
],
"error": "",
"request_id": "1912930100"
}
平时我们用jsonpath提取某个值,用的都是$.key1.key2.key3这样用一个点加节点名称,一步一步往下找,直到找到为止,对吗?
有没有觉得,这样的写法很死,很古板,万一有一天,key2的名称变了,这个路径是不是就不能用了,就错误了。今天我们分享给大家一个好的方法用$..key3
一、提取data里面多个project_name值,可以看出方法二更灵活方便,所以推荐使用方法二
方法一:$.data[0:].project_name提取到所有值
Result[0]=zhxhgcbivyk
Result[1]=zxgcbjbjx
Result[2]=jaxcspbjbxj
Result[3]=xyyzxbkjgf
Result[4]=xcskysmybjoyh
方法二:$..project_name提取到所有值
Result[0]=zhxhgcbivyk
Result[1]=zxgcbjbjx
Result[2]=jaxcspbjbxj
Result[3]=xyyzxbkjgf
Result[4]=xcskysmybjoyh
二、提取data里面最后1个project_name值
$.data[-1:].project_name
Result[0]=xcskysmybjoyh
三、提取data里所有值
$..*
四、提取多个值,单值使用和多值迭代
单值使用:
1、提取多个project_name值,单值使用
2、Debug Sampler显示提取出来的多个值
project=zhxhgcbivyk
project_name_1=zhxhgcbivyk
project_name_2=zxgcbjbjx
project_name_3=jaxcspbjbxj
project_name_4=xyyzxbkjgf
project_name_5=xcskysmybjoyh
project_name_matchNr=5
3、接口使用提取出来的某个值,不能直接用提取器里面变量${project_name},而应该是如果用第1个值${project_name_1}
多值迭代:
需搭配ForEach控制器循环迭代所有值
1、提取多个project_name值
2、Debug Sampler显示提取到的多个值
3、配置ForEach控制器,迭代多次
4、配置传入值采样器,采样器放置ForEach控制器下
5、project_name值被迭代使用了多次