Python爬虫实战,pyecharts模块,Python实

「这是我参与11月更文挑战的第23天,活动详情查看:2021最后一次更文挑战」。

前言

利用Python实现18年北上广深空气质量数据分析可视化。废话不多说。

让我们愉快地开始吧~

开发工具

Python版本: 3.6.4

相关模块:

requests模块

numpy模块

pandas模块

pyecharts模块;

以及一些Python自带的模块。

环境搭建

安装Python并添加到环境变量,pip安装需要的相关模块即可。

网站分析

北上广深AQI全年走势图

2017天津空气质量了

这里简单给大家科普一下有关AQI,PM2.5的知识

小常识

空气指数

提取数据

获取数据代码

import time\
import requests\
from bs4 import BeautifulSoup\
\
headers = {\
    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'\
}\
for i in range(113):\
    time.sleep(5)\
    # 把1转换为01\
    url = 'http://www.tianqihoubao.com/aqi/tianjin-2017' + str("%02d" % i) + '.html'\
    response = requests.get(url=url, headers=headers)\
    soup = BeautifulSoup(response.text, 'html.parser')\
    tr = soup.find_all('tr')\
    # 去除标签栏\
    for j in tr[1:]:\
        td = j.find_all('td')\
        Date = td[0].get_text().strip()\
        Quality_grade = td[1].get_text().strip()\
        AQI = td[2].get_text().strip()\
        AQI_rank = td[3].get_text().strip()\
        PM = td[4].get_text()\
        with open('air_tianjin_2017.csv''a+', encoding='utf-8-sig'as f:\
            f.write(Date + ',' + Quality_grade + ',' + AQI + ',' + AQI_rank + ',' + PM + '\n')
复制代码

数据获取成功

数据获取

先来看看天津

AQI全年走势图

天津AQI全年走势图

92.5是年均AQI值,从上面科普知识里可以知道,2017年天津整体空气质量只能是「良」中的下下等水平,与轻度污染近在咫尺。

AQI月均走势图

AQI月均走势图

从月均的走势图就能看出,1月的空气质量最差,8月的空气质量最好,当也并不是有多好,充其量也就是个「良」!

AQI季度箱形图

AQI季度箱形图

箱形图,显示一组数据分散情况资料的统计图。

数据里有最大值、最小值、中位数和两个四分位数。

这里可以看出,2017年天津的季度AQI均值差距不是很大。

但是一、二、四季度有明显的波动,空气质量有时会变得很差。

PM2.5全年走势图

PM2.5全年走势图

59.87是年均PM2.5值,已经远超过国家二级标准限值35了。

其实天津给我留下的印象就是天气经常灰蒙蒙,时常还会变点颜色,比如黄色~

一年下不了几次雨,及其干燥。所以那个最低值11。

PM2.5月均走势图

PM2.5月均走势图

和AQI的走势差不多,同样是1月最高,8月最低。

PM2.5季度箱形图

PM2.5季度箱形图

基本上四个季度都超标了,一年不超标的估计也就那么几次。

PM2.5指数日历图

PM2.5指数日历图1

PM2.5指数日历图2

PM2.5指数日历图3

日均PM2.5国家二级标准为75,从上面的热力图看,基本上轻度污染过半了。

天津全年空气质量情况

天津全年空气质量情况

「良」和「轻度污染」占了大头,「优」只能在角落里瑟瑟发抖,足以说明空气之差。

接下来看看北上广深

北上广深AQI全年走势图

北上广深AQI全年走势图

北上广深全年空气质量情况

北上广深全年空气质量情况

深圳几乎都是「优」和「良」,上海和广州和上面说的一样,北京的「优」已经不少了。