和前面三篇博客一样,如果想直接获取数据的话,可以私聊或者电子邮件(chinshuuichi@qq.com)(尽量电子邮件联系,私信回复不及时)联系我,我会收一点手工费。

目录

  • 简介
  • 效果展示
  • 代码
  • 系列文章

简介

百度迁徙 :百度迁徙

这是百度迁徙大数据的第四篇博客,不过多地说明了。
最近太忙了,本来我已经一个月多月没研究这个数据了,上周贺博士联系我说更新了那个什么上班和休闲指数,让我爬取一下顺便更新一下博客。
贺博士太热情了并且给的实在是太多了!
于是我就写下了这篇博客!

效果展示

本文的数据来自百度迁徙里面的上班出行强度指数和就餐休闲出行强度指数,如下图。

本文提供的代码可以批量抓取数据,如抓取所有城市级别的上班和休闲指数放进同一个excel里的不同的sheet中。我爬取前瞜了一眼源码页,其实这个和城内出行强度差不多的,唯一不同的是它是把两个指数放到一个源码页里,大体爬取思路和城内出行强度一样。

照例,先展示一波抓取后的数据,如下图。

代码

# -*- coding: utf-8 -*-
import requests #导入请求模块
import json #导入json模块
import time #导入时间模块
import xlrd
import xlwt
import xlsxwriter
from ChineseAdminiDivisionsDict import CitiesCode, ProvinceCodedef internalflow_all_date(CodeDict): #CodeDict字典里所有城市的迁徙规模指数,以全国列表形式列出#######创建一个workbook########workbook = xlsxwriter.Workbook('上班和休闲指数.xlsx')    # 创建一个workbook 设置编码worksheet1 = workbook.add_worksheet('上班出行强度指数')    # 创建一个worksheetworksheet2 = workbook.add_worksheet('就餐休闲出行强度指数')    # 创建一个worksheet#################写入行头各城市代码及其城市名###############CitiesOrder = {}                         #存放城市序号的空字典worksheet1.write(0 , 0 , '城市代码')                      #写入行头worksheet1.write(0 , 1 , '城市')                 #写入行头worksheet2.write(0 , 0 , '城市代码')                      #写入行头worksheet2.write(0 , 1 , '城市')                 #写入行头times = 1for key , value in CodeDict.items():worksheet1.write(times , 0 , str(value))                #写入城市代码worksheet1.write(times , 1 , str(key))                  #写入城市名worksheet2.write(times , 0 , str(value))                #写入城市代码worksheet2.write(times , 1 , str(key))                  #写入城市名CitiesOrder[str(key)] = times                                #写入城市序号字典 times += 1########################开始抓取数据##############################for Area , Code in CodeDict.items():url=f'http://huiyan.baidu.com/migration/odsemantic.jsonp?dt=city&id={Code}&date=0'print(f'{Area}:{url}')try:response=requests.get(url, timeout=20) # #发出请求并json化处理r=response.text[4:-1] #去头去尾data_dict=json.loads(r,strict=False) #字典化except :print('正在准备重新启动------------------------------------------\n')time.sleep(10)response=requests.get(url, timeout=20) # #发出请求并json化处理r=response.text[4:-1] #去头去尾data_dict=json.loads(r,strict=False) #字典化print('启动中----------------------------------------------------\n')# time.sleep(0.1)  #挂起一秒r=response.text[4:-1] #去头去尾data_dict=json.loads(r) #字典化if data_dict['errmsg']=='SUCCESS':work_data_list=data_dict['data']['list']['work']entert_data_list=data_dict['data']['list']['entertainment']counter_date = 2        #日期计数器work_datelist = []entert_datelist = []for date , index in work_data_list.items():      #按日期排序work_datelist.append(date)for date , index in entert_data_list.items():      #按日期排序entert_datelist.append(date)work_datelist.sort()entert_datelist.sort()for date in work_datelist:index_w = work_data_list[date]index_e =entert_data_list[date]# print(f'{date} : {index}')worksheet1.write(0 , counter_date , float(date))worksheet2.write(0 , counter_date , float(date))worksheet1.write(CitiesOrder[str(Area)] , counter_date , float(index_w))worksheet2.write(CitiesOrder[str(Area)] , counter_date , float(index_e))counter_date += 1   #日期计数器自加一else:print('错误')workbook.close()#台湾省搜不到数据,因此新建一个字典Cities
Cities = {'北京市':110000,'天津市':120000,'石家庄市':130100,'唐山市':130200,'秦皇岛市':130300,'邯郸市':130400,'邢台市':130500,'保定市':130600,'张家口市':130700,'承德市':130800,'沧州市':130900,'廊坊市':131000,'衡水市':131100,'太原市':140100,'大同市':140200,'阳泉市':140300,'长治市':140400,'晋城市':140500,'朔州市':140600,'晋中市':140700,'运城市':140800,'忻州市':140900,'临汾市':141000,'吕梁市':141100,'呼和浩特市':150100,'包头市':150200,'乌海市':150300,'赤峰市':150400,'通辽市':150500,'鄂尔多斯市':150600,'呼伦贝尔市':150700,'巴彦淖尔市':150800,'乌兰察布市':150900,'兴安盟':152200,'锡林郭勒盟':152500,'阿拉善盟':152900,'沈阳市':210100,'大连市':210200,'鞍山市':210300,'抚顺市':210400,'本溪市':210500,'丹东市':210600,'锦州市':210700,'营口市':210800,'阜新市':210900,'辽阳市':211000,'盘锦市':211100,'铁岭市':211200,'朝阳市':211300,'葫芦岛市':211400,'长春市':220100,'吉林市':220200,'四平市':220300,'辽源市':220400,'通化市':220500,'白山市':220600,'松原市':220700,'白城市':220800,'延边朝鲜族自治州':222400,'哈尔滨市':230100,'齐齐哈尔市':230200,'鸡西市':230300,'鹤岗市':230400,'双鸭山市':230500,'大庆市':230600,'伊春市':230700,'佳木斯市':230800,'七台河市':230900,'牡丹江市':231000,'黑河市':231100,'绥化市':231200,'大兴安岭地区':232700,'上海市':310000,'南京市':320100,'无锡市':320200,'徐州市':320300,'常州市':320400,'苏州市':320500,'南通市':320600,'连云港市':320700,'淮安市':320800,'盐城市':320900,'扬州市':321000,'镇江市':321100,'泰州市':321200,'宿迁市':321300,'杭州市':330100,'宁波市':330200,'温州市':330300,'嘉兴市':330400,'湖州市':330500,'绍兴市':330600,'金华市':330700,'衢州市':330800,'舟山市':330900,'台州市':331000,'丽水市':331100,'合肥市':340100,'芜湖市':340200,'蚌埠市':340300,'淮南市':340400,'马鞍山市':340500,'淮北市':340600,'铜陵市':340700,'安庆市':340800,'黄山市':341000,'滁州市':341100,'阜阳市':341200,'宿州市':341300,'六安市':341500,'亳州市':341600,'池州市':341700,'宣城市':341800,'福州市':350100,'厦门市':350200,'莆田市':350300,'三明市':350400,'泉州市':350500,'漳州市':350600,'南平市':350700,'龙岩市':350800,'宁德市':350900,'南昌市':360100,'景德镇市':360200,'萍乡市':360300,'九江市':360400,'新余市':360500,'鹰潭市':360600,'赣州市':360700,'吉安市':360800,'宜春市':360900,'抚州市':361000,'上饶市':361100,'济南市':370100,'青岛市':370200,'淄博市':370300,'枣庄市':370400,'东营市':370500,'烟台市':370600,'潍坊市':370700,'济宁市':370800,'泰安市':370900,'威海市':371000,'日照市':371100,'临沂市':371300,'德州市':371400,'聊城市':371500,'滨州市':371600,'菏泽市':371700,'郑州市':410100,'开封市':410200,'洛阳市':410300,'平顶山市':410400,'安阳市':410500,'鹤壁市':410600,'新乡市':410700,'焦作市':410800,'濮阳市':410900,'许昌市':411000,'漯河市':411100,'三门峡市':411200,'南阳市':411300,'商丘市':411400,'信阳市':411500,'周口市':411600,'驻马店市':411700,'济源市':419001,'武汉市':420100,'黄石市':420200,'十堰市':420300,'宜昌市':420500,'襄阳市':420600,'鄂州市':420700,'荆门市':420800,'孝感市':420900,'荆州市':421000,'黄冈市':421100,'咸宁市':421200,'随州市':421300,'恩施土家族苗族自治州':422800,'仙桃市':429004,'潜江市':429005,'天门市':429006,'神农架林区':429021,'长沙市':430100,'株洲市':430200,'湘潭市':430300,'衡阳市':430400,'邵阳市':430500,'岳阳市':430600,'常德市':430700,'张家界市':430800,'益阳市':430900,'郴州市':431000,'永州市':431100,'怀化市':431200,'娄底市':431300,'湘西土家族苗族自治州':433100,'广州市':440100,'韶关市':440200,'深圳市':440300,'珠海市':440400,'汕头市':440500,'佛山市':440600,'江门市':440700,'湛江市':440800,'茂名市':440900,'肇庆市':441200,'惠州市':441300,'梅州市':441400,'汕尾市':441500,'河源市':441600,'阳江市':441700,'清远市':441800,'东莞市':441900,'中山市':442000,'潮州市':445100,'揭阳市':445200,'云浮市':445300,'南宁市':450100,'柳州市':450200,'桂林市':450300,'梧州市':450400,'北海市':450500,'防城港市':450600,'钦州市':450700,'贵港市':450800,'玉林市':450900,'百色市':451000,'贺州市':451100,'河池市':451200,'来宾市':451300,'崇左市':451400,'海口市':460100,'三亚市':460200,'三沙市':460300,'儋州市':460400,'五指山市':469001,'琼海市':469002,'文昌市':469005,'万宁市':469006,'东方市':469007,'定安县':469021,'屯昌县':469022,'澄迈县':469023,'临高县':469024,'白沙黎族自治县':469025,'昌江黎族自治县':469026,'乐东黎族自治县':469027,'陵水黎族自治县':469028,'保亭黎族苗族自治县':469029,'琼中黎族苗族自治县':469030,'重庆市':500000,'成都市':510100,'自贡市':510300,'攀枝花市':510400,'泸州市':510500,'德阳市':510600,'绵阳市':510700,'广元市':510800,'遂宁市':510900,'内江市':511000,'乐山市':511100,'南充市':511300,'眉山市':511400,'宜宾市':511500,'广安市':511600,'达州市':511700,'雅安市':511800,'巴中市':511900,'资阳市':512000,'阿坝藏族羌族自治州':513200,'甘孜藏族自治州':513300,'凉山彝族自治州':513400,'贵阳市':520100,'六盘水市':520200,'遵义市':520300,'安顺市':520400,'毕节市':520500,'铜仁市':520600,'黔西南布依族苗族自治州':522300,'黔东南苗族侗族自治州':522600,'黔南布依族苗族自治州':522700,'昆明市':530100,'曲靖市':530300,'玉溪市':530400,'保山市':530500,'昭通市':530600,'丽江市':530700,'普洱市':530800,'临沧市':530900,'楚雄彝族自治州':532300,'红河哈尼族彝族自治州':532500,'文山壮族苗族自治州':532600,'西双版纳傣族自治州':532800,'大理白族自治州':532900,'德宏傣族景颇族自治州':533100,'怒江傈僳族自治州':533300,'迪庆藏族自治州':533400,'拉萨市':540100,'日喀则市':540200,'昌都市':540300,'林芝市':540400,'山南市':540500,'那曲市':540600,'阿里地区':542500,'西安市':610100,'铜川市':610200,'宝鸡市':610300,'咸阳市':610400,'渭南市':610500,'延安市':610600,'汉中市':610700,'榆林市':610800,'安康市':610900,'商洛市':611000,'兰州市':620100,'嘉峪关市':620200,'金昌市':620300,'白银市':620400,'天水市':620500,'武威市':620600,'张掖市':620700,'平凉市':620800,'酒泉市':620900,'庆阳市':621000,'定西市':621100,'陇南市':621200,'临夏回族自治州':622900,'甘南藏族自治州':623000,'西宁市':630100,'海东市':630200,'海北藏族自治州':632200,'黄南藏族自治州':632300,'海南藏族自治州':632500,'果洛藏族自治州':632600,'玉树藏族自治州':632700,'海西蒙古族藏族自治州':632800,'银川市':640100,'石嘴山市':640200,'吴忠市':640300,'固原市':640400,'中卫市':640500,'乌鲁木齐市':650100,'克拉玛依市':650200,'吐鲁番市':650400,'哈密市':650500,'昌吉回族自治州':652300,'博尔塔拉蒙古自治州':652700,'巴音郭楞蒙古自治州':652800,'阿克苏地区':652900,'克孜勒苏柯尔克孜自治州':653000,'喀什地区':653100,'和田地区':653200,'伊犁哈萨克自治州':654000,'塔城地区':654200,'阿勒泰地区':654300,'石河子市':659001,'阿拉尔市':659002,'图木舒克市':659003,'五家渠市':659004,'北屯市':659005,'铁门关市':659006,'双河市':659007,'可克达拉市':659008,'昆玉市':659009,'香港特别行政区':810000,'澳门特别行政区':820000}if __name__=="__main__":internalflow_all_date(Cities)print('全部完成')

系列文章

【Python】基于Python的百度迁徙1——迁入、迁出数据(附代码)
【Python】基于Python的百度迁徙2——迁徙规模指数(附代码)
【Python】基于Python的百度迁徙3——城内出行强度(附代码)
-----------------------分割线(以下是乞讨内容)-----------------------

【Python】基于Python的百度迁徙4——上班和休闲指数(附代码)相关推荐

  1. 我用Python爬取了难下载的电子教材(内附代码)

    我用Python爬取了难下载的电子教材(内附代码) 第一次在CSDN上面分享经历,有点激动.本大二狗最近这段时间去不了学校又想看教材,不巧学习通上面的部分内容老师设置了不可下载啊.好在最近学习了一点P ...

  2. 基于粒子群算法优化的Elman神经网络数据预测-附代码

    基于粒子群算法优化的Elman神经网络数据预测 - 附代码 文章目录 基于粒子群算法优化的Elman神经网络数据预测 - 附代码 1.Elman 神经网络结构 2.Elman 神经用络学习过程 3.电 ...

  3. 基于人工蜂群优化的BP神经网络(分类应用) - 附代码

    基于人工蜂群优化的BP神经网络(分类应用) - 附代码 文章目录 基于人工蜂群优化的BP神经网络(分类应用) - 附代码 1.鸢尾花iris数据介绍 2.数据集整理 3.人工蜂群优化BP神经网络 3. ...

  4. 基于哈里斯鹰优化的BP神经网络(分类应用) - 附代码

    基于哈里斯鹰优化的BP神经网络(分类应用) - 附代码 文章目录 基于哈里斯鹰优化的BP神经网络(分类应用) - 附代码 1.鸢尾花iris数据介绍 2.数据集整理 3.哈里斯鹰优化BP神经网络 3. ...

  5. 基于布谷鸟优化的BP神经网络(预测应用) - 附代码

    基于布谷鸟优化的BP神经网络(预测应用) - 附代码 文章目录 基于布谷鸟优化的BP神经网络(预测应用) - 附代码 1.数据介绍 3.CS优化BP神经网络 3.1 BP神经网络参数设置 3.2 布谷 ...

  6. 基于灰狼算法优化概率神经网络PNN的分类预测-附代码

    基于灰狼算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于灰狼算法优化概率神经网络PNN的分类预测 - 附代码 1.PNN网络概述 2.变压器故障诊街系统相关背景 2.1 模型建立 3. ...

  7. 基于粒子群优化的BP神经网络(分类应用) - 附代码

    基于粒子群优化的BP神经网络(分类应用) - 附代码 文章目录 基于粒子群优化的BP神经网络(分类应用) - 附代码 1.鸢尾花iris数据介绍 2.数据集整理 3.粒子群优化BP神经网络 3.1 B ...

  8. 基于鸟群优化的BP神经网络(预测应用) - 附代码

    基于鸟群优化的BP神经网络(预测应用) - 附代码 文章目录 基于鸟群优化的BP神经网络(预测应用) - 附代码 1.数据介绍 3.BSA优化BP神经网络 3.1 BP神经网络参数设置 3.2 鸟群算 ...

  9. Python 基于Python从mysql表读取千万数据实践

    基于Python 从mysql表读取千万数据实践   by:授客 QQ:1033553122 场景:   有以下两个表,两者都有一个表字段,名为waybill_no,我们需要从tl_waybill_b ...

  10. Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理

    基于python+mysql浅谈redis缓存设计与数据库关联数据处理 by:授客  QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3 ...

最新文章

  1. 感恩心成就了车建新和红星美凯龙
  2. freemodbus线圈中的位操作
  3. 第七章_类_7.4 类的作用域(加了自己的总结部分)
  4. 关于寻路算法的一些思考(6):预先计算好的路径的所用空间
  5. 三星Galaxy Z Flip 3渲染图:更窄边框 铰链升级
  6. ios 调用系统应用的方法 应用间跳转的方法
  7. 随想录(强大的kprobe)
  8. pytorch卷积神经网络_使用Pytorch和Matplotlib可视化卷积神经网络的特征
  9. golang之正则校验(验证某字符串是否符合正则表达式)
  10. 华为手机解锁码计算工具_手机计算器全线阵亡?小编实测苹果、华为、三星……...
  11. 根据 轮播图背景色 自动填充剩余背景色的 走马灯
  12. html鼠标移上去变成箭头,js实现鼠标移动到div上变成箭头
  13. 那些你不愿说给领导的话
  14. T480s安装Ubuntu16
  15. 多线程的终止方法(停止线程)
  16. Pyspark学习笔记小总
  17. WPF布局控件与子控件的HorizontalAlignment/VerticalAlignment属性之间的关系
  18. 16丨数据分析基础篇答疑
  19. 仅一张人脸就能被扒得底裤不剩:口罩墨镜都没用,跨平台跨时空,这个人脸搜索惹了众怒...
  20. 全国高校信息 ,全国市州信息 ,全国省市信息 ,全国区县联查信息 2019-08-27

热门文章

  1. 图像处理OpenCV(2)——OpenCV基本操作之图像的基础操作
  2. OS实验xv6 6.S081 开坑
  3. 华为hwics格式产品文档打开方式
  4. 视频存储服务器 存储性能,面向海量高清视频数据的高性能分布式存储系统
  5. 如何搭建企业大数据分析平台
  6. Python爬虫课--第二节 爬虫请求模块 urllib.request,urllib.parse,requests模块
  7. 计算机教室电脑无法启动,电子教室教师端不能启动没开机的学生机的解决办法...
  8. android管理交换机,用手机android超级终端 如何开启交换机端口
  9. 数据结构(王道计算机考研笔记)
  10. 快速入门学习数字图像处理(冈萨雷斯第三版)