获取clientheight为0_用10行python代码获取全国城市交通生活圈

cc231d10eb1a3c03eaecbd7ee4a2a0dc.png

9291014e84ba23f38217ed8d1eec7d47.png

9ddb281713fa82e0af63b9e89cb183e1.png

今天在网上冲浪看到一个很花哨的数据,全国各城市主要商圈从早上6点到晚上10点20min,30min,45min,60min,90min生活圈轮廓。

1 获取思路

75e24ee93f1e07830b35b137ccfd37e2.png
按下F12

按下F12,点击淮海路可以看到出现一个网站,他就是我们要找的接口

7b1892dfacda11959e9547aa7c92c263.png
接口

内容是通过get请求直接获取的,接口是

https://trp.autonavi.com/ajax/life/circle.do?districtId=B00156EVQJ&dir=0&timeIndex=8
  • 点击网页上的目的地,发现接口里dir变成了1
  • 点击下方的时间轴的10:00,发现接口里timeindex变成了10
  • 说明dir代表是出发地还是目的地,timeindex代表着时间点

245a358abc499faaf3f45c24d25250a2.png
返回数据预览

可以看到返回结果很规整,是列表的列表

所以我们可以直接get获取,然后利用geopandas将坐标连成一个个面即可。

2 获取实现

get获取

response=requests.get('https://trp.autonavi.com/ajax/life/circle.do?districtId=B00156EVQJ&dir=0&timeIndex=6')
data=response.json()

c43db5839869710c20120a9ec96a82cc.png
data大概长这个样子

data是列表组成的列表,列表里有5个列表,分别对应着20min,30min,45min,60min,90min生活圈轮廓

构造成面

#20min为例
a=data[0]
print(a[0])
print(a[-1])

[121.541855, 31.149355] [121.54641, 31.151604]

可以看到同一个面里的数据点的首尾不一致,所以需要我们在末尾加上第一个点坐标,这样才能构成一个封闭的面。

#20min为例
a=data[0]
b=data[0][0]
#构成封闭面
a.append(b)

接着就可以利用geopandas做成面,并导出shape文件了

m1=gpd.GeoSeries([geometry.Polygon(a)],index=['20min'])
m1.crs = pyproj.CRS.from_user_input('EPSG:4326')

e192e79e1edd6052d4bf3ca2cce0259b.png
20min生活圈

这样就获取了淮海路在早上8点(作为出发地)的20min生活圈范围了,通过改变接口里的districtId,dir,timeindex就可以获取各商圈各个时间点的20min,30min,45min,60min,90min生活圈范围了。districtId打开F12选择各个商圈查看接口可以获得。

3 成果展示

2ad710886c3473241b3555bdcb2db189.png
获取的以淮海路为中心的交通生活圈

可以看到跟高德上的一样,虽然配色是丑了亿点点。


2601c72d781c5ffcf77923a200fbddde.png

上海各个商圈的数据已经下载完毕,若对此文件和完整代码感兴趣,请帮忙转发下面微信推文到朋友圈集赞5个,截图到公众号后台即可获取

用10行python代码获取全国城市交通生活圈​mp.weixin.qq.com
949307ffd7dafc6fa7fbcdcee1f43a9b.png

b2317f3e615a1d96621828f2e9ca0eba.png
小猫咪在线求转发

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

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

相关文章

12个便于web设计及开发的在线工具

请不要低估这些小工具,他们极其的方便并且能节省很多的时间和工作,下面就是这些在线工具的列表,挑几款来试试吧。 我还是比较喜欢Ajax Load和Web 20 Badges Generator的,你们呢? Favico 一个图标制作工具&#xff0c…

服务器改家用系统吗,服务器主机改家用

服务器主机改家用 内容精选换一换本节操作介绍购买云耀云服务器的操作步骤。购买时,为减少您配置参数的时间,部分参数由系统自动分配,以下参数配置供你了解系统的默认配置。购买云耀云服务器仅支持“包年/包月”的计费方式,请您在…

指定module_一个缺失已久的特性 — module模块

在ES6之前,Javascript还不支持原生的模块化。如果要实现模块化,我们要借助一些框架,比如:requireJS或者seaJS等;什么?没用过也没听过这些框架?没关系,它们不是我们今天要讲的重点。今…

使用HTML5,画布和开放数据创建全球降水(雨)可视化

我目前正在为Three.js编写下一本书,其中一章涉及可视化开放数据。 在寻找可以使用的数据时,我遇到了来自NOAA的一组数据。 通过此站点,您可以以网格格式下载一组全世界的每月降水报告。 因此,我下载了它们,然后开始处理…

CRF两个例子的理解

概率计算例子: 预测例子: 转载于:https://www.cnblogs.com/callyblog/p/9933993.html

【转】前端开发值得一看的文章

其实这篇文章不是这里的,只是,后台很傻B地进不了了。也不知道是什么乱七八糟的问题。先写在这里,当做这么久没更新的偷懒好了。(而且,挑出来的这些都是精华呢!),大家各取所需吧: 1. …

Spring boot Mybatis 整合(注解版)

之前写过一篇关于springboot 与 mybatis整合的博文,使用了一段时间spring-data-jpa,发现那种方式真的是太爽了,mybatis的xml的映射配置总觉得有点麻烦。接口定义和映射离散在不同的文件中,阅读起来不是很方便。于是,准…

如何在ftp服务器下查找文件夹,查找ftp服务器下的文件夹名

查找ftp服务器下的文件夹名 内容精选换一换Linux x86-64(64位)服务器,常见的有EulerOS、Ubuntu、Debian、CentOS、OpenSUSE等。Windows 7及以上版本。请参见JRE地址下载JRE。Linux服务器安装请参考如下步骤:使用root用户,进入/opt目录。cd /o…

Spring入门篇——第6章 Spring AOP的API介绍

第6章 Spring AOP的API介绍 主要介绍Spring AOP中常用的API。6-1 Spring AOP API的Pointcut、advice概念及应用 映射方法是sa开头的所有方法 如果当前是被锁住,并且方法的名称中包含set,那也就是说我们不希望执行set方法去改变物体本身的属性&#xff0…

图的长宽_华为P50 Pro渲染图曝光:单挖孔屏+超高屏占比

去年下半年,华为发布 Mate 40 旗舰系列,由于麒麟芯片的供应限制以及受到消费者的热捧,Mate 40 系列部分型号至今仍一机难求;此前,有数条爆料曝光了华为新旗舰 P50 系列手机的相关信息,该系列有望在今年上半…

你从未见过的 HTML5 动画效果

HTML5 的 Canvas 对象将改变 JavaScript 的使命,使之成为 HTML5 下强大的动画脚本编写工具。本文介绍了 8 个你从未见过的,基于 HTML5 Canvas 和 JavaScript 的动画,这些令人难以置信的效果将使你对 HTML5 彻底折服。需要指出的是&#xff0c…

在Ubuntu主机下实现与Windows虚拟机共享文件夹

一.概述 由于要实现Ubuntu主机中的一些文件与Windows虚拟机共享,因此要创建一个共享文件夹映射到虚拟机中. 网上许多都是Windows主机+Linux虚拟机的配置,在此分享主机是L…

配置安全域名https申请免费证书并配置nginx运行环境

补全信息时选项 在这一步需要去查看进度,下载对应文件上传到对应站点根目录里按照要求建的隐藏类型的文件 如下图 讲证书文件按照下面操作 进行配置项配置https 如下 详情下载附件 server { listen 443; server_name wap.ssgsrz.com; ssl on; root /web/wap_ssgsr…

为什么要在Java SE 7的数字中使用下划线-在数字文字中使用下划线

JDK 1.7发行版引入了几个有用的功能,尽管其中大多数都是语法糖,但使用该功能可以大大提高可读性和代码质量。 这样的功能之一是在数字文字中引入下划线 。 从Java 7开始,您可以在Java源代码中向可读性更高的10_000_000_000写一个长数字&#…

如何刻录服务器安装系统光盘启动盘,如何刻录系统光盘

如何刻录系统光盘大家更多的是使用第三方刻录软件,但是win7系统自带刻录功能可以刻录系统盘。那么如何刻录系统光盘,怎么刻录系统盘?下面小编就来给大家介绍如何刻录系统光盘方法。win7系统自带刻录功能刻录系统光盘方法:一、前期准备&#…

微信小程序之发送模板消息(通过openid推送消息给用户)

一、获取access_token access_token是接口调用的凭证,目前有效期为两个小时,需要定时刷新,重复获取将导致上次获取的access_token失效。(注:不建议每次调用需要access_token的接口,都去重新获取access_toke…

Ansible-----条件判断与错误处理

when 在ansible中,条件判断的关键词是when --- - hosts: allremote_user: roottasks:- debug:msg: "System release is centos"when: ansible_distribution "CentOS"ansible_distribution就是facts信息中的一个key,之前如果我们需要…

分解 python_面试官:如何用Python实现将一个整数分解成质因数?

概述今天主要分享一个关于分解质因数的实例,判断的逻辑稍微多了点,一起来看看吧~需求将一个整数分解质因数。例如:输入90,打印出90233*5思路其实根本不需要判断是否是质数,从2开始向数本身遍历,能整除的肯定是最小的质…

Kali学习笔记25:Arachni使用(实现分布式扫描)

文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 Arachni不同于上次介绍的nikto和skipfish 是一个Web界面的一个Web扫描器 Arachni的强大不…

红帽正式宣布发布JBoss BPM Suite 6和JBoss BRMS 6

红帽公司刚刚宣布了这些期待已久的产品的全面上市 ! 要花费大量精力将社区代码转变为企业质量的软件,客户和最终用户可以在Red Hat支持的生产环境中使用这些代码。 现在是现在和潜在客户学习该产品,让合作伙伴开始使用它并学习基本知识&…