首页 > Web开发 > 详细

反爬虫,非标准的json格式解析

时间:2020-06-18 16:32:17      阅读:95      评论:0      收藏:0      [点我收藏+]

反爬虫,非标准的json格式解析

今天写爬虫的时候,发现有一些数据都是通过非标准的 json 格式进行传输的,标准的 json 我们可以将其转化为 Python 中的数据类型,进行查询,但对于一些类似于 json 但又非标准 json 格式的字符,就会比较头疼了。

例如下面这样

hxbase_json1({
list: [
{Number: "1", StockNameLink: "stock_bg.aspx?code=688008&date=2019-12-31", industry: "澜起科技(688008)"}
{Number: "2", StockNameLink: "stock_bg.aspx?code=600663&date=2019-12-31", industry: "陆家嘴(600663)"}
{Number: "3", StockNameLink: "stock_bg.aspx?code=000006&date=2019-12-31", industry: "深振业A(000006)"}]})

看上去格式和 json 很像,但仔细观察会发现,这其中的 key 没有被单引号包裹起来,这就导致了它无法被简单的解析为字典类型。

自己用正则去重新构建要累死,在网上找到了一个包-demjson`

pip install demjson

import demjson
text=‘hxbase_json1({list: [{Number: "1", StockNameLink: "stock_bg.aspx?code=688008&date=2019-12-31", industry: "澜起科技(688008)"}\{Number: "2", StockNameLink: "stock_bg.aspx?code=600663&date=2019-12-31", industry: "陆家嘴(600663)"}{Number: "3", StockNameLink: "stock_bg.aspx?code=000006&date=2019-12-31", industry: "深振业A(000006)"}]})‘
#去除多余的干扰字符,变成只有key没有引起来的假json
t = text[13:-1] 
data = demjson.decode(t)

反爬虫,非标准的json格式解析

原文:https://www.cnblogs.com/aduner/p/13157999.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!