在北京看场雪为什么这么难?

作者:朱小五

来源:凹凸玩数据


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

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站也能学编程吗?     

源码地址: https://pan.quark.cn/s/d1f41682e390 miyoubiAuto 米游社每日米游币自动化Python脚本(务必使用Python3) 8更新:更换cookie的获取地址 注意:禁止在B站、贴吧、或各大论坛大肆传播! 作者已退游,项目不维护了。 如果有能力的可以pr修复。 小引一波 推荐关注几个非常可爱有趣的女孩! 欢迎B站搜索: @嘉然今天吃什么 @向晚大魔王 @乃琳Queen @贝拉kira 第三方库 食用方法 下载源码 在Global.py中设置米游社Cookie 运行myb.py 本地第一次运行时会自动生产一个文件储存cookie,请勿删除 当前仅支持单个账号! 获取Cookie方法 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 按刷新页面,按下图复制 Cookie: How to get mys cookie 当触发时,可尝试按关闭,然后再次刷新页面,最后复制 Cookie。 也可以使用另一种方法: 复制代码 浏览器无痕模式打开 http://user.mihoyo.com/ ,登录账号 按,打开,找到并点击 控制台粘贴代码并运行,获得类似的输出信息 部分即为所需复制的 Cookie,点击确定复制 部署方法--腾讯云函数版(推荐! ) 下载项目源码和压缩包 进入项目文件夹打开命令行执行以下命令 xxxxxxx为通过上面方式或取得米游社cookie 一定要用双引号包裹!! 例如: png 复制返回内容(包括括号) 例如: QQ截图20210505031552.png 登录腾讯云函数官网 选择函数服务-新建-自定义创建 函数名称随意-地区随意-运行环境Python3....
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值