作者:朱小五

来源:凹凸玩数据


一下雪,北京就成了北平。

11月29日,北京2019年的“初雪”终于来了,

大家花式“秀雪”的视频和图片成功霸占了我的朋友圈。

小五在北京待了快两年,表示看到北京的雪实在是太太太少了。

少到什么程度呢?

印象中一只手可以数出来。

口说无凭,拿数据说话吧~

获取数据

打开某度,搜索“北京历史天气”,随便打开了一个网站(注意避开广告),发现从2011年到昨天的北京历史天气都可以查询到。

那我们下一步就是,

小五,上爬虫!

def get_data(year, month):    soup = get_soup(year, month)    all_weather = soup.find('div', class_="wdetail").find('table').find_all("tr")    data = list()    for tr in all_weather[1:]:        td_li = tr.find_all("td")        for td in td_li:            s = td.get_text()            data.append("".join(s.split()))    res = np.array(data).reshape(-1, 4)    return res

小五用python爬取得到了北京2011年1月-2019年11月的所有历史天气(包括天气、温度、方向),共3256条数据。

【完整爬虫代码和历史天气数据下载地址见文末】

为什么这么难?

我们接着说回北京初雪这件事,

说实话,查阅了历史数据,发现今年北京的这场雪下的竟然异常的“准时”。

怎么个准时法呢?

北京1961-2018年期间平均初雪日正是11月29日!

根据中国气象报的统计数据,北京近些年似乎降雪越来越晚,2010年后多次出现第二年才降初雪的情况。

我们再看看北京每年到底有多少天降雪吧~

小五统计了北京市2011-2019年的各年下雪天数(只要当天的天气含有小雪、大雪就算下雪天)。

我最后甚至把雨夹雪都算上了,还是改变不了北京的降雪天数确实在逐年下降的事实。

最近的两年,北京每年只有四天下过小雪。

结合前文的初雪日期分布图,我们可以明显看出北京确实下雪越来越晚,而且下雪天数也越来越少了。

难道是气温问题?

再用刚才爬取的北京市历史温度验证一下吧。

爬取得到的当日温度都是4℃/-5℃这种格式的,可以将最低最高温度算术平均作为当日的温度。

这样就可以成功得到北京市的气温走势图√

额,

看的也不是太明显。

由于北方降雪主要是10月-2月期间,所以统计这段时间的日均温度就够了。

秋冬季节的温度确实和当年降雪天数有关系,比如2011年气温高降雪就少,2012年气温低降雪就多。但又不太对,尤其最近几年,无论温度高低降雪都少。

经过小五又一番搜索,终于得知与北京郊区相比,北京城区可能受城市热岛效应影响,城区温度较高,确实不利于水汽的凝结。

但是气温并非是影响北京降雪的主要的因素,还有其他几个重要的原因:

  1. 气候干燥降水少。雪是由大量白色不透明的冰晶(雪晶)和其聚合物(雪团)组成的降水。如果没有足够的水分,是没法形成降雪的。北京入冬以来通常空气极度干燥,所以根本没有足够的水汽凝结成雪。

  2. 冷空气不足。降雪的形成需要冷空气和暖湿气流的共同作用。最近几年过境北京的大多都是比较弱的冷空气,真正强大的冷空气并没有几个,来了也不会持续多久,以至于雨滴根本来不及凝结成冰晶就又融化消散了。

  3. 地形影响。北京西部和北部群山环峙,冷空气很难及时攀越群山与水汽相遇。即便越过山脉,冷空气也会居高而下,直接将水汽一冲而散,故无法凝结成雪。

  4. 没有足够的信风条件。虽然靠近东方的渤海,但可惜北京是典型的季风气候,冬季多西北风,仍然很难将水汽带进来。

学习了一波地理知识的东北er朱小五,终于知道北京看场雪有多难了!

在东北,下大雪是要放假的。

那么北京,何时能下一场和东北一样,纷纷扬扬的鹅毛大雪呢?

平日的北京,太忙了,太快了

下雪后的北京,就真的变成闲适自在,静谧安稳的“北平”了吧!

最后,放张故宫博物馆的“宫猫”镇楼吧~

相关爬虫源码和北京历史天气数据已上传github:https://github.com/zpw1995/aotodata/tree/master/interest/weather

作者:朱小五,互联网公司数据分析师。热衷于Python爬虫,数据分析,可视化,个人公众号《凹凸玩数据》,有趣的不像个技术号~

◆ ◆ ◆  ◆ ◆



长按二维码关注我们


数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。

管理员二维码:

猜你喜欢● 笑死人不偿命的知乎沙雕问题排行榜● 我用Python纪念了那些被烂片收割的智商税!● 互联网大佬学历&背景大揭秘,看看是你的老乡还是校友● 上万条数据撕开微博热搜的真相!● 你相信逛B站也能学编程吗?     

在北京看场雪为什么这么难?相关推荐

  1. “北京今年入冬的第一场雪”,纪念博客园写日志一年了

    今天是2009年11月1日,北京下了入冬以来的第一场雪,就在昨天我还以为北京还是秋季,可是今天早上醒来看到外面飘落的大雪,已经意识到北京的冬天已经到来了 来博客园写博客一年了,结识了很多朋友,也为社区 ...

  2. 2月10日,北京下雪了,今年冬天第一场雪

    早晨起来下雪了,2011年的第一场雪, 今年冬天的第一场雪. 雪非常大,出来的时候一直在下. 地面厚厚的一层. 空气里充满了湿润的气息,有股泥土的味道. 很舒服,久违了的空气. 忘记开窗换气了,真傻. ...

  3. 2010年东京的第一场雪

    今天是2010年2月的第一天,傍晚时分,东京终于下了入冬以来的第一场雪. 旧版的<标日初上>中有这样几句话:冬は北京より東京のほうが暖かいです.東京の冬は北京ほど寒くないです. 这本书是人 ...

  4. Dijkstra——去北京看奥运

    Description 2008年将到,王飞同学化了九牛二虎之力搞到了2张2008年奥运会足球赛决赛的门票.真是开心啊!他爸爸准备开车跟他一起去北京看球赛.不过门票费好贵啊,所以他爸爸说了,这个钱要在 ...

  5. hpuoj 1715: 感恩节KK专场——2015年的第一场雪 (暴力)

    1715: 感恩节KK专场--2015年的第一场雪 时间限制: 1 Sec  内存限制: 128 MB 提交: 884  解决: 82 [提交][状态][讨论版] 题目描述 下雪了,KK学长站在三教门 ...

  6. 为2020年的第一场雪锦上添花:用 matplotlib 绘制雪花和雪景

    一场大雪,覆盖了华北.华东.天地连成一片,城市银装素裹,处处诗情画意.人人兴高采烈.朋友圈被雪景图和调侃路滑摔跤的段子刷屏,气氛比过年还要热烈几分.我也来凑个热闹,用python为2020年的第一场雪 ...

  7. 2006年的第一场雪

    雪,冷酷,没有冰霜惨烈, 轻飘舞,是那般温柔,那般纯洁. 从天上降落人间,一尘不染, 始终保持固有的高风亮节. 你把江山变得更加壮丽, 赐予人类来年丰收的喜悦. 2006年的第一场雪,其实这应该是今年 ...

  8. 巴黎市中心降下2019年第一场雪

    当地时间1月22日,法国巴黎市中心降下2019年第一场雪,气温也随之下降,街上的行人和车辆均有所减少.中新社记者 李洋 摄 一对情侣在埃菲尔铁塔前合影留念. 无家可归者在长椅上睡觉. 游客在卢浮宫前拍 ...

  9. 【英语天天读】第一场雪

    作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ --Henry Wadsworth Longfellow The first snow came. How be ...

最新文章

  1. css3遮罩层_CSS3鼠标hover图片超酷遮罩层动画特效
  2. 每日一皮:经历过的Bug修复过程...
  3. NoSql数据库使用半年后在设计上面的一些心得
  4. 怎么把原来的墙拆掉_电视墙避坑指南要收好!拆掉重装太心累...
  5. C语言满分:L1-061 新胖子公式 (10分)
  6. 展讯康一:2020年推出5G芯片 第一桶金含金量最高
  7. css实现一级下拉菜单
  8. 如果你是IT技术人员,请思考这15个问题
  9. 华润置地php面试题_长春华润置地崑崙御,以至臻匠心,成就城市典范
  10. 数据分析之numpy
  11. sqlyong导出sql没有数据_sqlyog怎么导入外部数据库-sqlyog导入数据库的方法 - 河东软件园...
  12. Redmi 10X Pro样张首曝:搭载流光相机技术 一键成创意大片
  13. 西南财大计算机学院官网,西南财经大学
  14. git 代码提交过程
  15. 微信小程序之保存图片到手机相册
  16. 一个很简单很简单的静态网页(附源代码)HTML+CSS
  17. java调用公安接口_src 公安部PGIS在交警系统的应用,包括 的各种API 以及mysql对空间数据的支持 GIS program 261万源代码下载- www.pudn.com...
  18. 生物安全实验室送排风设计标准
  19. 第十四章 使用者的特殊 shell 与 PAM 模块
  20. swoole-面向连接(tcp)的心跳检测和合包分包

热门文章

  1. 打靶问题java递归_菜鸟每天练习 之 递归算法(打靶)
  2. 练习:注册页面(简单)
  3. aos.js动画_AOS库使滚动动画变得很酷
  4. 快速拿捏CSS中的常用的元素属性
  5. 【哈佛精神】业余时间
  6. CAD快捷键拓展技巧:什么是临时替代快捷键?
  7. UOS桌面版103X忘记用户密码操作手册
  8. Java面向接口编程的方式开发打印机(墨盒颜色,纸张大小)
  9. 气泡文字php,CSS3 巧妙实现聊天气泡
  10. 想辞职转行做程序员,需要学习哪些内容?