Python实战:天气数据分析、预测与可视化教程
配套教学视频地址:Python天气数据分析预测与可视化项目实战 计算机毕业设计 爬虫 简历项目 复试项目 课程设计 可视化 数据分析 大数据毕业设计_哔哩哔哩_bilibili
安装pycharm、Miniconda和phpenv
我用的是pycharm professional 2022.3.3
B站或者淘宝有安装教程
1. Miniconda的下载和环境的创建
Anaconda的下载地址是:Index of /anaconda/miniconda/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
1.1 Miniconda的安装
下载完成之后一路下一步安装即可,有两点需要注意:

1.2 Miniconda国内镜像加速
复制下列指令到cmd中执行即可完成加速。
conda config --remove-key channels
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
前端模板下载:
Github:
wz1229238108/weather: 项目使用Python、Flask技术,项目包括天气数据爬取、数据分析、预测与可视化。该系统包括实时天气和历史天气数据可视化,地区热力图等。 运用Python爬虫技术爬取气象网站得到气象数据,将数据存储至MySQL数据库。大概150000条数据。 使用天气网站API预测未来天气情况。此仓库为B站项目实战教学视频配套模板素材库。 (github.com)
Gitee
weather: 项目使用Python、Flask技术,项目包括天气数据爬取、数据分析、预测与可视化。该系统包括实时天气和历史天气数据可视化,地区热力图等。 运用Python爬虫技术爬取气象网站得到气象数据,将数据存储至MySQL数据库。大概150000条数据。 使用天气网站API预测未来天气情况。 在B站发布项目实战教学视频。 (gitee.com)
为什么要定义type='no_select'
在定义query
函数时,type='no_select'
是一个默认参数,用于指示函数的调用者预期的SQL操作类型。这个参数的目的是为了区分两种不同的SQL操作:查询(SELECT)和其他类型的操作(如INSERT、UPDATE、DELETE等)。
当type
参数的值不是'no_select'
时,意味着执行的SQL语句是一个查询操作,函数期望从数据库中获取数据。在这种情况下,函数会调用cursor.fetchall()
来获取所有匹配的记录,并将这些记录作为列表返回。
当type
参数的值是'no_select'
时,意味着执行的SQL语句是除了查询以外的其他类型的操作,如插入、更新或删除记录。这些操作通常不返回数据,而是简单地更改数据库的状态。因此,函数不会尝试获取数据,而是返回一个表示操作成功的字符串'数据库语句执行成功'
。
通过这种方式,query
函数可以更加灵活地处理不同的SQL操作,并根据操作类型返回相应的结果。这样的设计可以让函数的使用者根据需要选择是否处理查询结果,同时也简化了函数的实现,因为它不需要为每种类型的SQL操作提供不同的返回值处理逻辑。
用户信息表:
CREATE TABLE users (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL
);
历史天气网站http://lishi.tianqi.com
headers = { # 请求标头,通过模拟请求标头以此实现仿人类登录进入网站并获取信息
'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
}
历史天气表:
CREATE TABLE lishiweathers (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
城市 VARCHAR(255),
日期 DATE,
最高温度 FLOAT,
最低温度 FLOAT,
天气 VARCHAR(255),
风向 VARCHAR(255)
);
作者:weixin_45469617