雪之下雪乃. 发表于 2021-6-6 14:45:07

求助求助json报错了

url = 'http://zczx.hnjs.gov.cn/query/view/ejjzs'
    data = {}
    data['zjhm'] = 412801197611230818
    data = urllib.parse.urlencode(data).encode('utf-8')

    resss = urllib.request.urlopen(url, data)
   
    html = resss.read().decode('utf-8')
    print(html)
    t = json.loads(html,strict=False)
    sj = t['data']
    print(sj)


为什么这段代码json直接报错了

错误类型:
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

想发个请求抓个网页,结果直接出了个这个,然后一直弄不明白

suchocolate 发表于 2021-6-6 19:28:59

这里返回的是html,不是json,用json打开就会报错。 resss = urllib.request.urlopen(url, data)

wp231957 发表于 2021-6-7 10:40:48

这是一个查询网站   你想爬哪部分数据呢

雪之下雪乃. 发表于 2021-6-7 22:42:29

wp231957 发表于 2021-6-7 10:40
这是一个查询网站   你想爬哪部分数据呢

就是发送请求,然后爬取一下返回的数据,你看代码中发送请求的是身份证号,然后返回的是查询结果的,就是想爬取一下返回的结果,然后做一个自动查询的东西

雪之下雪乃. 发表于 2021-6-7 22:43:58

wp231957 发表于 2021-6-7 10:40
这是一个查询网站   你想爬哪部分数据呢

但是json报错,搞得很头疼{:5_99:}

wp231957 发表于 2021-6-8 07:55:56

雪之下雪乃. 发表于 2021-6-7 22:43
但是json报错,搞得很头疼

地址请求错了,
url = 'http://zczx.hnjs.gov.cn/query/listData/ejjzs'
data = {
   'cbh': '',
   'zjhm': '412801197611230818',
   'qymc':''
}

res = requests.post(url, data=data)
print(res.text)

'''
   PS D:\wp> py app4.py
          {"code":0,"data":"[{\"zczy\":[{\"注册专业\":\"建筑工程\",\"有效期\":\"2019-07-12\",\"状态\":\"注销\"},{\"注册专业\":\"水利水电工程\",\"有效期\":\"2021-04-22\",\"状态\":\"注销\"}],\"xm\":\"樊建周\",\"orgcode\":\"9141020039904192XE\",\"zcbh\":\"豫241111225960\",\"xb\":\"男\",\"zyyzjym\":\"\",\"qymc\":\"河南省悦鑫
          水利工程有限公司\",\"zjhm\":\"412******0818\"}]"}

'''

雪之下雪乃. 发表于 2021-6-9 22:21:52

suchocolate 发表于 2021-6-6 19:28
这里返回的是html,不是json,用json打开就会报错。

感谢{:5_108:}
页: [1]
查看完整版本: 求助求助json报错了