python中的json结构_python数据挖掘_Json结构分析

json是一种轻量级的数据交换格式,也可以说是一种配置文件的格式

这种格式的文件是我们在数据处理经常会遇到的

python提供内置的模块json,只需要在使用前导入即可

你可以通过帮助函数查看json的帮助文档

json常用的方法有load、loads、dump以及dumps,这个都属于python初级,我不做过多解释

json可以结合数据库一起使用,在这以后要处理大量数据时非常有用

下面我们正式来利用数据挖掘对json文件进行处理

现在很多网站都运用了Ajax,所以一般很多都是XHR文件

通过

这里我想利用一个地图网站来演示

我们通过浏览器的调试获取了相关url

https://ditu.amap.com/service/poiInfo?id=B001B0IZY1&query_type=IDQ

下面我们通过requests模块中的get方法,模拟浏览器发出的http请求,并返回的到的结果对象

代码如下

# coding=utf-8

__Author__ = "susmote"

import requests

url = "https://ditu.amap.com/service/poiInfo?id=B001B0IZY1&query_type=IDQ"

resp = requests.get(url)

print(resp.text[0:200])

在终端中运行结果如下

数据已经获取到了,但是为了接下来能使用这些数据,我们需要利用json模块对这些数据进行分析

代码如下

import requests

import json

url = "https://ditu.amap.com/service/poiInfo?id=B001B0IZY1&query_type=IDQ"

resp = requests.get(url)

json_dict = json.loads(resp.text)

print(type(json_dict))

print(json_dict.keys())

简单讲一下上面的代码:

导入json模块,然后调用loads方法,将返回的文本作为方法的参数传入

在终端中运行结果如下

可以看出,转换的结果是与json字符串对应的字典,因为type(json_dict)返回的是

因为对象是一个字典,所以我们可以调用字典的方法,在这里我们调用的就是keys方法

结果返回三个键,即status、searcOpt、data

下面我们来查看data键里面的数据

import requests

import json

url = "https://ditu.amap.com/service/poiInfo?id=B001B0IZY1&query_type=IDQ"

resp = requests.get(url)

json_dict = json.loads(resp.text)

print(json_dict['data'])

下面在终端中运行这一段代码

可以看到里面有很多我们需要的数据,如

不一一标出,通过跟网页显示的相比较,就能清楚哪些是有用的了

下面我们通过代码获取有用的信息,把它清晰的输出

# coding=utf-8

__Author__ = "susmote"

import requests

import json

url = "https://ditu.amap.com/service/poiInfo?id=B001B0IZY1&query_type=IDQ"

resp = requests.get(url)

json_dict = json.loads(resp.text)

data_dict = json_dict['data']

data_list = data_dict['poi_list']

dis_data = data_list[0]

print('城市: ', dis_data['cityname'])

print('名称: ', dis_data['name'])

print('电话: ', dis_data['tel'])

print('区号: ', dis_data['areacode'])

print('地址: ', dis_data['address'])

print('经度: ', dis_data['longitude'])

print('纬度: ', dis_data['latitude'])

因为返回的是一个字典,通过对文件结构的研究,字典中嵌套着列表,列表中又嵌套着字典,通过层层解套,成功获取数据

我这里把步骤分开列出了,所以你会看的更加清楚

下面我们通过终端运行程序,获取我们想要的信息

是不是非常简单了,这个程序可以作为一个模版,获取其他地方的信息时只需要改一个url即可

例如以下几个范例

北京大学

或者是腾讯大厦

数据挖掘是没有尽头的,希望大家多分析数据,找到你想要的数据

我的博客 www.susmote.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/521020.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

杭州云栖大会阿里云放大招,8K远程医疗会诊引关注

大家每天都会照镜子,镜子里的一切都清清楚楚,足可乱真,可是你想过有一天看视频直播就像照镜子么? 这不,在云栖大会的C馆里,8K超高清直播体验馆前异常火爆,在这里,很多参会者都围着有…

「2019 嵌入式智能国际大会」 399 元超值学生票来啦,帮你豪省 2600 元!

2019 嵌入式智能国际大会即将来袭!购票官网:https://dwz.cn/z1jHouwE物联网是继计算机、互联网和移动通信之后的又一次信息产业的革命性发展,在互联网和移动互联网高速发展的时代,几乎所有行业都有数据联网的需求。无论是国外的科…

java中nonce_java如何获取微信timestamp,nonceStr,signature参数

java如何获取微信timestamp,nonceStr,signature参数发布时间:2021-01-18 11:46:12来源:亿速云阅读:57作者:小新这篇文章主要介绍java如何获取微信timestamp,nonceStr,signature参数,文中介绍的非常详细,具有…

【杭州云栖】飞天技术汇大视频专场:全民视频时代下的创新技术之路

2018杭州•云栖大会在9月19日如期召开,在四天时间内将举行2场主论坛、170多场前沿峰会。在9月19日上午的飞天技术汇-大视频专场中,多位阿里云技术专家、合作伙伴、客户为现场观众分享了各自领域的多媒体研发成果,进行多款重磅产品的发布&…

Centos7 使用Docker 安装Oracle精简版本

文章目录一、Docker1. 在线安装Docker2. 启动docker3. 使用docker拉取Oracle镜像4. 看拉取的oracle镜像5. 创建守护式oracle容器并启动容器6. 查看正在运行的容器二、oracle容器配置篇2.1. 进入oracle容器的控制台2.2. 切换root用户配置环境变量2.3. 设置系统及用户密码三、登录…

sip协议详解_SIP协议详解-INVITE消息发送过程

SIP协议是VoIP中最重要的信令控制协议。SIP中第一件事情就是主叫发送INVITE给被叫,被叫响铃。本文从多角度详细描述INVITE消息发送的全过程。一、阅读RFC权威描述关于INVITE消息发送,先查看RFC 3261中权威描述:INVITE client transaction: ht…

【杭州云栖】飞天技术汇CDN与边缘计算专场:让内容离消费者更进一步

【杭州云栖】飞天技术汇CDN与边缘计算专场:让内容离消费者更进一步 在5G移动通信、IoT万物智联时代即将到来的大背景下,越来越多的应用和数据来自边缘位置,呈现低延时、高带宽、大连接、本地化的业务特征,那么如何协同阿里云全球…

迈克尔·戴尔再次到访2019戴尔科技峰会,为“戴尔中国4.0+战略”加个码……

10月25日,以“拓界成真”为主题的2019戴尔科技峰会在北京国家会议中心隆重举行。戴尔科技集团董事长兼首席执行官迈克尔戴尔出席峰会,发表主题演讲,见证集团与多个地方政府、高校、企业签署战略合作协议,并与教育部领导一起&#…

【杭州云栖】边缘计算ENS:拓展云的边界

在9月19日下午的杭州云栖大会飞天技术汇-CDN与边缘计算专场中,阿里云边缘计算团队的高级技术专家王广芳,从边缘计算的定义、场景的需求和挑战、ENS产品的价值及能力,以及典型的应用场景和案例等几个方面,详细解读了阿里云对于边缘…

Centos7 解决Docker拉取镜像慢的问题

配置加速Docker镜像源 vi /etc/docker/daemon.json在配置文件中加入 {"registry-mirrors": ["https://xxx.mirror.aliyuncs.com"] }[rootkm docker]# systemctl daemon-reload [rootkm docker]# systemctl restart dockerhttps://cr.console.aliyun.com…

python程序员自我评价_写给程序员的简明 Python(1)

为什么写python作为胶水语言越来越流行, 第三方类库, 轮子也特别多.对于创业型公司或刚开始的产品都可以选用 Python 作为后端支撑, 工具开发, 实现快速迭代.对于学习算法的同学, 是门简洁如 C的语言.对于搞机器学习的同学,是必备的技能.从哪开始写一些探索的方法基本的变量类型…

你的食物变质没?用AI算法来检测一下吧

最近一条幼儿园采用过期食物的新闻引起了社会的强烈关注,对于食品安全而言,国家一直是严格要求的,尤其是对于婴幼儿食品安全的标准,部分已经超越了国际上的标准。但可能是由于无法严格地执行到每一个地方且检测周期较长&#xff0…

java国家电网面试试题_国家电网笔试面试相关

1. 简历筛选国网在通知笔试前,会根据简历内容做第一次筛选,“研究方向和国网不相关”是很频繁出现的一个理由。建议在编写简历时研究一下国网的当前工作,然后把自己的研究点尽量向国网感兴趣的方向靠。本人的研究方向就和国网的现状八杆子打不…

CAS项目部署和基础操作

文章目录一、部署cas1. 复制cas.war到webapps2. 登录页面二、CAS服务端配置2.1. 添加用户2.2. 端口修改2.3. 去除https认证一、部署cas 1. 复制cas.war到webapps 把cas.war放到tomcat的webapps下面启动Tomcat即可 2. 登录页面 二、CAS服务端配置 2.1. 添加用户 找到指定文…

基于POLARDB数据库的压测实践

POLARDB架构简介 PolarDB是阿里云ApsaraDB数据库团队研发的基于云计算架构的下一代关系型数据库(暂时仅支持MySQL,PostgreSQL正在紧锣密鼓的开发中),其最大的特色是计算节点(主要做SQL解析以及存储引擎计算的服务器)与存储节点(主要做数据块存储&#x…

戴尔科技:以技术突破创新边界!

2019戴尔科技峰会今天在北京隆重举行,戴尔科技集团与数千位全国企业级精英、合作伙伴、业内专家、媒体及分析师代表等齐聚一堂,分享了在5G、云计算、存储、数据保护、服务器等领域的最新技术产品、最佳实践经验及最新发展趋势。此次峰会还完整地展示了戴…

phppython混合开发_如何让python嵌入html实现类似php的快速开发,十分有价值

1.在一个文件夹名为www.html3.com的web项目来实现,首先到nginx的配置文件nginx.conf做如下配置python和html混合编写的文件,我以文件后缀为.phtml,通过服务器配置让它重定向到 /rewrite/2.进去项目目录下的static/html/ 编写一个1.phtml 内容…

让你久等了!《码出高效:Java 开发手册》正式发布

可爱的Java开发者们,让你们久等了! 9月22日杭州云栖大会,众所期待的新书《码出高效:Java 开发手册》正式发布,并宣布将所有图书收益捐赠于公益项目。 此书从立意到付梓,历时超过两年,期间推翻数…

python中is和 的区别_Python中is和==的区别

"""is和 的区别"""a abcb abcprint("都是字符串-a is b--", a is b)print("都是字符串-a b--", a b)c 11d 11print("都是数字-c is d--", c is d)print("都是数字-c d--", c d)e [0, 1, 2]f …

(Docker实战) 第1篇:Centos7 环境准备和安装Docker-ce

文章目录一 、安装docker1. 卸载以前安装的docker2. 安装必要的系统工具4. 更新yum缓存5. 安装docker6. 更改docker仓库为国内仓库7. 重启docker8. 安装docker-compose一 、安装docker docker优点 快速上手新技术,把精力放在业务上而非安装和配置服务器快速搭建开发…