如何用Python从指定JSON对象中提取'İlan No'的值
提取'İlan No'值的Python解决方案
实现步骤
对应你提供的JavaScript逻辑,Python端需要完成以下三步:
- 获取目标div的
data-json属性值(这就是JS中$(jsons).data('json')读取的数据源) - 把属性值解析为Python可操作的字典
- 按相同路径
['customVars'][11]['value']提取目标值
完整代码
from bs4 import BeautifulSoup import json # 假设houseData是你获取到的HTML内容 soup = BeautifulSoup(houseData, "html.parser") target_div = soup.find("div", {"id": "gaPageViewTrackingJson"}) # 提取data-json属性并解析 if target_div: data_json_str = target_div.get("data-json") if data_json_str: try: data_dict = json.loads(data_json_str) ilan_no = data_dict["customVars"][11]["value"] print(f"İlan No: {ilan_no}") except (json.JSONDecodeError, KeyError, IndexError) as e: print(f"提取失败:{str(e)}") else: print("目标div不存在data-json属性") else: print("未找到id为gaPageViewTrackingJson的div")
关键说明
- JS中的
$(element).data('json')本质是读取HTML元素的data-json属性,Python中用get('data-json')即可获取 - 必须用
json.loads()将字符串转为字典,才能按键/索引访问内部数据 - 添加异常处理是为了应对HTML结构变化、JSON格式错误或路径不存在的情况
内容的提问来源于stack exchange,提问作者Soul
相关产品推荐
相关产品推荐

