如何使用python beautiful soup从HTML下面获取标签和ID信息

索拉布

如何从下面的 HTML 代码中提取 ID 和标签(10870,7th Phase JP Nagar)

<input id="filter_data" type="hidden" value="{&quot;Locality&quot;
:{&quot;Top_Results_Array&quot;
:{&quot;0&quot;
:{&quot;ID&quot;:&quot;10870&quot;,&quot;LABEL&quot;:&quot;7th Phase JP Nagar&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:202.0},&quot;1&quot;
:{&quot;ID&quot;:&quot;2259&quot;,&quot;LABEL&quot;:&quot;Electronic City&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:126.0},&quot;2&quot;
:{&quot;ID&quot;:&quot;2265&quot;,&quot;LABEL&quot;:&quot;Koramangala&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:118.0},&quot;3&quot;
:{&quot;ID&quot;:&quot;11646&quot;,&quot;LABEL&quot;:&quot;BTM 2nd Stage&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:118.0}},&quot;More_Locality_Array&quot;
:{&quot;0&quot;
:{&quot;ID&quot;:&quot;2277&quot;,&quot;LABEL&quot;:&quot;Bellandur&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:102.0},&quot;1&quot;
:{&quot;ID&quot;:&quot;5467&quot;,&quot;LABEL&quot;:&quot;Hulimavu&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:95.0},&quot;2&quot;
:{&quot;ID&quot;:&quot;2261&quot;,&quot;LABEL&quot;:&quot;HSR Layout&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:94.0},&quot;3&quot;:
:{&quot;ID&quot;:&quot;2293&quot;,&quot;LABEL&quot;:&quot;Jigani&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:91.0},&quot;4&quot;
:{&quot;ID&quot;:&quot;2249&quot;,&quot;LABEL&quot;:&quot;Bannerghatta Road&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:83.0},&quot;5&quot;
:{&quot;ID&quot;:&quot;2264&quot;,&quot;LABEL&quot;:&quot;Kanakpura Road&quot;,&quot;SELECTED&quot;:&quot;&quot;,&quot;COUNT&quot;:83.0},&quot;6&quot;:

我试过遵循 python 代码,它只是获取 input(id=filter_data) 的值

for loc in soup.find_all('input',id='filter_data'):
print(loc.get('value'))

我低于输出

{"Locality":{"Top_Results_Array":{
"0":{"ID":"10870","Locality":"7th Phase JP Nagar","SELECTED":"","COUNT":202.0}
,"1":{"ID":"2259","LABEL":"Electronic City","SELECTED":"","COUNT":126.0}
,"2":{"ID":"2265","LABEL":"Koramangala","SELECTED":"","COUNT":118.0}
,"3":{"ID":"11646","LABEL":"BTM 2nd Stage","SELECTED":"","COUNT":118.0}}
,"More_Locality_Array":{"0":{
"ID":"2277","LABEL":"Bellandur","SELECTED":"","COUNT":102.0}
,"1":{"ID":"5467","LABEL":"Hulimavu","SELECTED":"","COUNT":95.0}
,"2":{"ID":"2261","LABEL":"HSR Layout","SELECTED":"","COUNT":94.0}
,"3":{"ID":"2293","LABEL":"Jigani","SELECTED":"","COUNT":91.0}
,"4":{"ID":"2249","LABEL":"Bannerghatta Road","SELECTED":"","COUNT":83.0}
,"5":{"ID":"2264","LABEL":"Kanakpura Road","SELECTED":"","COUNT":83.0}

但我需要低于输出

10870 第七阶段 JP Nagar

2259电子城

第 2265 章

11646 BTM 第二阶段

第2277章

5467 胡里马武

2261高铁布局

. .

你能帮我解决这个问题吗

哈利_pb

我可以建议的一种方法是jsonify您的结果集并根据需要提取信息。问题是unicode. 你可以在get之后用这段代码试验一下result,你可以按照自己的方式获取数据。您可以将数据加载为列表、字典等,并根据需要获取值。

import json
exp = soup.find_all('input', attrs={"id":"filter_data"})
abc = exp[0].get('value') # len(exp) = 1 
abc = abc.decode('utf-8')  # since its unicode
result = json.loads(abc)
result

如果要查看具有位置的结果值,请检查

print result.values()[2]

在字典中查看并决定您想要的所有内容。

dict(result)

玩转json,你会得到你想要的。我希望这会有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Python和Beautiful Soup如何捕获空标签

如何使用Beautiful Soup从HTML获取文本

Python3 Beautiful Soup获取HTML标签锚

使用Beautiful Soup获取所有HTML标签

如何使用Python Beautiful Soup获取html的标记名称?

如何使用Python和Beautiful Soup修复html列表片段中缺少的ul标签

如何使用 Beautiful Soup 在 `p` 标签中获取文本?

如何使用Beautiful Soup来<script>标签?

如何使用scrapy或beautiful Soup提取特定html标签的内容?

Python:使用 Beautiful Soup 从 HTML 标签中提取图像源

如何使用Beautiful Soup在html页面中的两个标签之间获取内容?

使用 Beautiful Soup Python 在 HTML 代码的 'img' 标签内打印 'id' 值

使用 Python 和 Beautiful Soup 从表中获取列

如何使用Beautiful Soup删除html注释

使用Python和Beautiful Soup进行分页

在python中使用Beautiful Soup解析html

如何在获取Beautiful Soup元素的.string时忽略标签?

在HTML表中使用Beautiful soup查找信息

如何使用Python 3和Beautiful Soup获取Wikipedia文章的文本?

使用名称相同的Beautiful Soup搜刮信息

使用 Beautiful Soup 解析 html 表单输入标签

如何用 Beautiful Soup 提取 Span 标签

如何用Beautiful Soup忽略空标签?

如何使用 Beautiful Soup 和 Python 为 NASDAQ 站点中的表格提取 HTML 代码

Python抓取(Beautiful Soup)以从此HTML获取数据

仅使用Beautiful Soup获取外部html部分

使用Beautiful Soup(EPA网站)获取基于HTML元素的基础

如何单击/使用从 Python 中的 Beautiful Soup 解析的链接

如何在Beautiful Soup 4(Python)中使用搜索栏