吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1495|回复: 20
收起左侧

[求助] python关于json处理字典数据问题

[复制链接]
hahawangzi 发表于 2020-5-12 15:21
import json
#--------------------------------------------------

url='https://support.microsoft.com/zh-cn/help/4529964/windows-10-update-history'
headers={
         'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36',
         #'Referer':"https://www.manhuadb.com/author/370"
         
        }
web = requests.get(url,headers=headers)
web.encoding='utf-8'
pan = re.compile('"minorVersions": (.*?)]',re.S)
soup = BeautifulSoup(web.text,'lxml')
dav = soup.find_all('script',type="text/javascript")
for i in dav:
        s_raw = re.findall(pan, str(i))
        if len(s_raw) > 0:
            s = re.sub('\r\n\s*','',s_raw[0])[:-1]
            #print(s)
            res2=json.dumps(s)
            
            print(json.loads(res2))
            for j in json.loads(res2):
                print(j["heading"])
捕获.JPG
想用json来处理这段 匹配出来的数据,
我用了json.loads(res2)转换成字典后,还是无法通过键来获取值,是不是我哪里出错了,一运行就报错,求各位帮忙看看哪里有问题

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

带色的小马甲 发表于 2020-5-12 15:46
把你pan的正则方括号写到括号里面去
 楼主| hahawangzi 发表于 2020-5-12 15:52
带色的小马甲 发表于 2020-5-12 15:46
把你pan的正则方括号写到括号里面去

不懂??????????????写到哪里去呢?????????????????????
带色的小马甲 发表于 2020-5-12 15:53
hahawangzi 发表于 2020-5-12 15:52
不懂??????????????写到哪里去呢?????????????????????

pan = re.compile('"minorVersions": (.*?\])',re.S)
zdnyp 发表于 2020-5-12 16:01
学一下怎么贴代码
 楼主| hahawangzi 发表于 2020-5-12 16:09
带色的小马甲 发表于 2020-5-12 15:53
pan = re.compile('"minorVersions": (.*?\])',re.S)

json怎么把加载匹配后的内容,转换成字典,然后在进行字典搜索啊比如 print(j["id"])这样
我这个pan 已经匹配过了呀
麦田孤望者 发表于 2020-5-12 16:12
你那个图有一行没截上
还有看一看中括号和大括号是不是一一对应
 楼主| hahawangzi 发表于 2020-5-12 16:23
麦田孤望者 发表于 2020-5-12 16:12
你那个图有一行没截上
还有看一看中括号和大括号是不是一一对应

[{"id": "4550945","locale": "zh-hans","heading": "2020 年 4 月 21 日 - KB4550945(操作系统内部版本 18362.815 和 18363.815)","releaseDate": "2020-04-21T00:00:00","releaseVersion": "1903-OS Build 18362.815 and 1909-OS Build 18363.815"},{"id": "4549951","locale": "zh-hans","heading": "2020 年 4 月 14 日 - KB4549951(操作系统内部版本 18362.778 和 18363.778)","releaseDate": "2020-04-14T00:00:00","releaseVersion": "1903-OS Build 18362.778 and 1909-OS Build 18363.778"},{"id": "4554364","locale": "zh-hans","heading": "2020 年 3 月 30 日 - KB4554364(操作系统内部版本 18362.753 和 18363.753)","releaseDate": "2020-03-30T00:00:00","releaseVersion": "1903-OS Build 18362.753 and 1909-OS Build 18363.753"},{"id": "4541335","locale": "zh-hans","heading": "2020 年 3 月 24 日 - KB4541335(操作系统内部版本 18362.752 和 18363.752)","releaseDate": "2020-03-24T00:00:00","releaseVersion": "1903-OS Build 18362.752 and 1909-OS Build 18363.752"},{"id": "4551762","locale": "zh-hans","heading": "2020 年 3 月 12 日 - KB4551762(操作系统内部版本 18362.720 和 18363.720)","releaseDate": "2020-03-12T00:00:00","releaseVersion": "1903-OS Build 18362.720 and 1909-OS Build 18363.720"},{"id": "4540673","locale": "zh-hans","heading": "2020 年 3 月 10 日 - KB4540673(操作系统内部版本 18362.719 和 18363.719)","releaseDate": "2020-03-10T00:00:00","releaseVersion": "1903-OS Build 18362.719 and 1909-OS Build 18363.719"},{"id": "4535996","locale": "zh-hans","heading": "2020 年 2 月 27 日 - KB4535996(操作系统内部版本 18362.693 和 18363.693)","releaseDate": "2020-02-27T00:00:00","releaseVersion": "1903-OS Build 18362.693 and 1909-OS Build 18363.693"},{"id": "4532693","locale": "zh-hans","heading": "2020 年 2 月 11 日 - KB4532693(操作系统内部版本 18362.657 和 18363.657)","releaseDate": "2020-02-11T00:00:00","releaseVersion": "1903-OS Build 18362.657 and 1909-OS Build 18363.657"},{"id": "4532695","locale": "zh-hans","heading": "2020 年 1 月 28 日 - KB4532695(操作系统内部版本 18362.628 和 18363.628)","releaseDate": "2020-01-28T00:00:00","releaseVersion": "1903-OS Build 18362.628 and 1909-OS Build 18363.628"},{"id": "4528760","locale": "zh-hans","heading": "2020 年 1 月 14 日 - KB4528760(操作系统内部版本 18362.592 和 18363.592)","releaseDate": "2020-01-14T00:00:00","releaseVersion": "1903-OS Build 18362.592 and 1909-OS Build 18363.592"},{"id": "4530684","locale": "zh-hans","heading": "2019 年 12 月 10 日 - KB4530684(操作系统内部版本 18362.535 和 18363.535)","releaseDate": "2019-12-10T00:00:00","releaseVersion": "1903-OS Build 18362.535 and 1909-OS Build 18363.535"},{"id": "4524570","locale": "zh-hans","heading": "2019 年 11 月 12 日 - KB4524570(操作系统内部版本 18362.476 和 18363.476)","releaseDate": "2019-11-12T00:00:00","releaseVersion": "1903-OS Build 18362.476 and 1909-OS Build 18363.476"
 楼主| hahawangzi 发表于 2020-5-12 16:24
如何用json转换成字典用呢????????? 以前没用过json
井右寺 发表于 2020-5-12 16:33

import json
newdict = json.loads(rawdata)
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-15 17:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表