前言
哈喽哈喽!我是栗子,
这几天冷吗?温差大吗?风大吗?瑟瑟发抖中。
别急!下周起,小伙伴们直接冻傻,不信你看💨💨反正就是这个点基本上全国都降!——
温!——了!别问肿么得出这样子的结论的?冬天来的太快,就像龙卷风。。。
这几天冷是真的冷 ,干燥也是真的干燥,嘴唇都快干秃皮了!受冷空气的影响。各地气温有明
显下降,昼夜温差较大。看看这像不像最近的你?
所有文章完整的素材+源码都在👇👇
粉丝白嫖源码福利,请移步至CSDN社区或文末公众hao即可免费。
好了废话太多了。我们开始今天的正题吧:Python 爬取天气数据 并做数据可视化,我们来采
集北上广深历史天气采集,来看看历年的天气数据吧! 可视化分析之后可以得出多种结论的哦
~不信你看。
正文
一、前期准备
学到的知识点有:
动态数据抓包
requests发送请求
结构化+非结构化数据解析
运行环境:
[开发环境]:
python 3.6 运行代码
pycharm 2021 辅助敲代码
requests 第三方模块 pip install 模块名
镜像源安装 pip install -i pypi.douban.com/simple/ +模块名
+python 安装包 安装教程视频
+pycharm 社区版 专业版 及 激活码免费找我拿即可
二、代码实现
爬虫
批量采集数据(文本 视频 音频 图片)
原理:
模拟成 浏览器(客户端) 向 服务器 发送请求(跟服务器 打交道)
爬虫:
分析数据来源 找到数据
https://tianqi.2345.com/Pc/GetHistory?areaInfo%5BareaId%5D=54511&areaInfo%5BareaType%5D=2&date%5Byear%5D=2022&date%5Bmonth%5D=4
实现代码: 1. 发送请求 2. 获取数据 3. 解析数据 4. 保存数据
1)爬虫代码:
import requests # 第三方模块(额外安装) 发送请求
import parsel # 解析数据 第三方模块
import csv # 内置模块
with open('北上广深历史天气.csv', mode='a', newline='', encoding='utf-8') as f:
csv_writer = csv.writer(f)
csv_writer.writerow(['日期', '最高温度', '最低温度', '天气', '风向', '城市'])
city_list = [54511, 58362, 59287, 59493]
for city in city_list:
for year in range(2013, 2022):
for month in range(1, 13):
url = f'https://tianqi.2345.com/Pc/GetHistory?areaInfo%5BareaId%5D={city}&areaInfo%5BareaType%5D=2&date%5Byear%5D={year}&date%5Bmonth%5D={month}'
# 1. 发送请求
response = requests.get(url=url)
# <Response [200]>: 请求成功
# 2. 获取数据
json_data = response.json() # 字典 text 文本 字符串
# 3. 解析数据 (提取数据)
html_data = json_data['data']
# .history-table tr
selector = parsel.Selector(html_data)
trs = selector.css('.history-table tr')[1:]
for tr in trs:
# ::text: 获取标签文本内容
# .getall(): 获取所有的td标签
td = tr.css('td::text').getall()
if city == 54511:
td.append('北京')
elif city == 58362:
td.append('上海')
elif city == 59287:
td.append('广州')
elif city == 59493:
td.append('深圳')
print(td)
with open('北上广深历史天气.csv', mode='a', newline='', encoding='utf-8') as f:
csv_writer = csv.writer(f)
csv_writer.writerow(td)
2)效果展示:
3)北上广深天气数据采集表格存储
好啦!可视化的就等让大家自己实战了哈,当然也可以直接找我拿源码的 哈哈哈!
下面这个是可视化的动态图哦~
总结
各位北上广深的朋友们大家好 !!!要问这周的天气,请看天气预报 !!!
要问这一周穿什么,冬天噜 !!!~~~来来来~~~就看这篇文章就ok了哈!
学完这篇,一通百通,可以随便爬啦。看看你家乡的天气如何吧?我先来:最近的话温度有点
儿回升大概最近一周平均下来是12到-3。
✨完整的素材源码等:可以滴滴我吖!或者点击文末hao自取免费拿的哈~
🔨推荐往期文章——
项目1.7
【python实战】朋友因股票亏了,很惨常愤恨不平,当天我就分析出原因:怎么做到的?(听说关注我的人会暴富)
项目1.8 【Python实战】海量表情包炫酷来袭,快来pick斗图新姿势吧~(超好玩儿)
项目1.9 【Python实战】“特种兵”们的专属游戏助手,助你吃鸡:极品小助手也是棒呆了~(“大吉大利,今W吃鸡”)
项目0.8 【Python抢票神器】火车票枪票软件到底靠谱吗?实测—终极攻略。
项目0.9 【Python实战】WIFI密码小工具,甩万能钥匙十条街,WIFI任意连哦~(附源码)
🎁文章汇总——
Python文章合集 | (入门到实战、游戏、Turtle、案例等)
(文章汇总还有更多你案例等你来学习啦~源码找我即可免费!)