项目地址

github项目:PYWeatherReport

系列教程

机器学习参考篇: python+sklearn+kaggle机器学习
用python+sklearn(机器学习)实现天气预报 准备
用python+sklearn(机器学习)实现天气预报数据 数据
用python+sklearn(机器学习)实现天气预报 模型和使用

0.流程介绍

爬虫爬取去年今日的半个月前到去年今日的下个半个月的每日天气数据做训练集和训练验证集,爬取现在半个月前到现在的每日天气数据做预测数据集 -> 数据预处理 -> 训练模型和预测
机器学习过程可参考上面那篇

1. 环境搭建

a.python

如题,要使用python+sklearn做,所以肯定要搭建好python的环境,教程百度有很多,建议用python3.*

b.涉及到的机器学习相关库

安装命令:

pip install 库名

sklearn

本教程运用的机器学习核心库

panda

读取csv相关

seaborn

数据可视化,生成图表如折线图等

joblib

保存和读取训练好的模型,*.pkl文件

2.寻找数据来源

做机器学习我们需要尽量多和准确的数据,本次实例从www.meteomanz.com获取免费的天气数据

3.分析数据源网址规则

我们访问上一步的网站,可以发现有选择城市和时间的接口(PS:右上角的链接可以切换成英文)

接下来我们选择我们要做天气预报的城市和顺便一个时间点,如广州(PS:在选择框直接输入城市的前几个字符可以快速索引)

然后点按钮,我们会跳转到一个网页

这个就是我们要取到的数据了的地址,不过时间不对,接下来解析这个网址的规则,如

http://www.meteomanz.com/sy2?l=1&cou=2250&ind=59287&d1=13&m1=12&y1=2020&d2=13&m2=12&y2=2020

这里面

  • ?前的分别是http://网络协议,www.meteomanz.com域名,/sy2地址,我们主要关注?后的参数
  • l是语言参数,l=1指英语
  • cou和ind是地区和城市代码
  • d1,m1,y1是时间段的开始年月日
  • d2,m2,y2是时间段的结束年月日

所以

http://www.meteomanz.com/sy2?l=1&cou=2250&ind=59287&d1=02&m1=02&y1=2019&d2=13&m2=12&y2=2020

指从2019/2/2到2020/12/13的广州的每日天气数据,不要忘记里面月和日是要补0的,但是进去就发现最多给30天的数据,所以我们以后并不会用到怎么多天的数据

4.分析页面规则

获取到网址规则后,分析页面规则用于爬虫匹配数据,按F12打开开发者工具

如图,我们可以发现rbody里面的第二个tr标签里面的每个td里是数据(PS:用右上角的左边第一个小按钮然后点击那些数据)。

当我们知道了这些规则,接下来就可以写爬虫爬取符合条件的数据集了。

下一篇https://blog.csdn.net/qq_40832960/article/details/111182425

用python+sklearn(机器学习)实现天气预报 准备的更多相关文章

  1. 用python+sklearn(机器学习)实现天气预报数据 模型和使用

    用python+sklearn机器学习实现天气预报 模型和使用 项目地址 系列教程 0.前言 1.建立模型 a.准备 引入所需要的头文件 选择模型 选择评估方法 获取数据集 b.建立模型 c.获取模型 ...

  2. 用python+sklearn(机器学习)实现天气预报数据 数据

    用python+sklearn机器学习实现天气预报 数据 项目地址 系列教程 勘误表 0.前言 1.爬虫 a.确认要被爬取的网页网址 b.爬虫部分 c.网页内容匹配取出部分 d.写入csv文件格式化 ...

  3. python+sklearn+kaggle机器学习

    python+sklearn+kaggle机器学习 系列教程 0.kaggle 1. 初级线性回归模型机器学习过程 a. 提取数据 b.数据预处理 c.训练模型 d.根据数据预测 e.验证 今天是10 ...

  4. Python 3 利用 Dlib 19.7 和 sklearn机器学习模型 实现人脸微笑检测

    0.引言  利用机器学习的方法训练微笑检测模型,给一张人脸照片,判断是否微笑:   使用的数据集中69张没笑脸,65张有笑脸,训练结果识别精度在95%附近: 效果: 图1 示例效果 工程利用pytho ...

  5. Python线性回归算法【解析解,sklearn机器学习库】

    一.概述 参考博客:https://www.cnblogs.com/yszd/p/8529704.html 二.代码实现[解析解] import numpy as np import matplotl ...

  6. 用Python开始机器学习(7:逻辑回归分类) --好!!

    from : http://blog.csdn.net/lsldd/article/details/41551797 在本系列文章中提到过用Python开始机器学习(3:数据拟合与广义线性回归)中提到 ...

  7. python sklearn模型的保存

    使用python的机器学习包sklearn的时候,如果训练集是固定的,我们往往想要将一次训练的模型结果保存起来,以便下一次使用,这样能够避免每次运行时都要重新训练模型时的麻烦. 在python里面,有 ...

  8. 机器学习00:如何通过Python入门机器学习

    我们都知道机器学习是一门综合性极强的研究课题,对数学知识要求很高.因此,对于非学术研究专业的程序员,如果希望能入门机器学习,最好的方向还是从实践触发. 我了解到Python的生态对入门机器学习很有帮助 ...

  9. 基于Python的机器学习实战:KNN

    1.KNN原理: 存在一个样本数据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一个数据与所属分类的对应关系.输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应 ...

随机推荐

  1. WordCount个人项目

    1.GitHub地址:https://github.com/lyh27/WordCount 2.题目描述 Word Count1. 实现一个简单而完整的软件工具(源程序特征统计程序).2. 进行单元测 ...

  2. SpringMVC拦截html页面访问

    在 web.xml 配置文件 原本的前端控制器后面加一个 servlet-mapping 即可简单解决 虽能解决 html 访问的问题,但不清楚是否对后面的操作产生何种影响 <servlet&g ...

  3. vue项目中扫码枪收款

    扫码枪会将扫到的数据带入到获取焦点的输入框中,并且触发输入框的enter回车事件 1.页面上要有一个输入框,并且是获取焦点状态,当然它是隐藏的看不到,我是把宽高设置为0,然后加上回车事件.       ...

  4. Panda 交易所视点观察!区块链金融应用迎新规,哪些版块受影响?

    Panda交易所获悉,近日央行下发推动<区块链技术规范应用的通知>(以下简称"通知")及<区块链技术金融应用评估规则>(以下简称"规则" ...

  5. 四、git学习之——远程仓库

    Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上.怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以"克隆"这个原始版本库,而且每台机器的版 ...

  6. day108:MoFang:首页检测用户是否登录&在项目中使用MongoDB&用户页面更新用户信息&交易密码界面实现

    目录 1.首页页面也要检测用户是否登录 2.在flask中使用MongoDB 3.用户页面更新用户信息 4.交易密码界面/密码修改界面/昵称修改界面初始化 5.交易密码实现 1.首页页面也要检测用户是 ...

  7. matplotlib的学习6-annotation的标注

    import matplotlib.pyplot as plt import numpy as np ''' 当图线中某些特殊地方需要标注时,我们可以使用 annotation. matplotlib ...

  8. 面试级解析HashMap

    ------------恢复内容开始------------ 在介绍HashMap之前,有必要先给大家介绍一些参数的概念 HashMap的最大容量,capacity译为容量,capacity就是指Ha ...

  9. swift笔记简录

    一,变量和常量 /***************************基本数据类型*************************/ /****************************** ...

  10. winform使用Barcodex控件预览和打印一维码

    1.控件下载. http://files.cnblogs.com/files/masonblog/barcodex.zip . 包含barcodex.ocx控件.barcodex帮助文档.两个winf ...