
输入内容:
input=''' <div>姓名: example</div><br />年龄 :23 介绍 :<b>example</b>11<a href="example.com">1111</a><br>属性 1:内容 ''' 想转化为一个 dict
output={"姓名":"example", "年龄": "23","介绍":"<b>example</b>11<a href="example.com">1111</a>","属性 1":"内容"} 项数 换行方式 冒号(全 /半角)都不是固定的。虽然手动解析没什么难度,但有没有现成的可以直接用的包?如果没有,最佳解析方法是什么?
1 q409195961 2022-05-19 04:30:03 +08:00 <br />和<br>都替换成\n 中文冒号替换成英文冒号 split 以“\n”拆成数组 截出英文冒号前面做 key ,后面做 value key 和 value 用 strip 去除多余空格 插入 dict |
2 abc612008 2022-05-19 05:58:06 +08:00 |
3 ebingtel> 2022-05-19 09:02:08 +08:00 找 beautifulsoup 的库,对 html 进行解析,提取出 text ,再用 1L 的方法,转一下 |
4 dfgxcvbcv OP |
5 dfgxcvbcv OP #1 目前做法就是这样的,想问问有没有更好的实现 (号太新了 1 楼的用户名 @ 不了) |
6 huntagain2008 2022-05-19 10:11:05 +08:00 @q409195961 小白我按照 1 楼的方法做出来了。我根本不会 python >>> for i in list1: ... d[i.split(':')[0].strip()]=i.split(':')[1].strip() ... >>> d {'姓名': 'example', '年龄': '23', '介绍': '<b>example</b>11<a href="example.com">1111</a>', '属性 1': '内容'} |
7 learningman 2022-05-19 13:44:03 +08:00 via Android 不完整的 xml ,那就上 lxml 呗 |