课程设计 天气预报数据可视化开发

数据可视化开发是指将数据呈现为漂亮的统计图表,然后进一步发现数据中包含的规律以及隐藏的信息。数据可视化开发跟数据挖掘和大数据分析紧密相关,这些领域以及当下被热议的“深度学习”其最终的目标都是为了实现从过去的数据去对未来的状况进行分析和预测以及可视化展现。

天气数据是每个人基本都会关注的,具体到个人,主要是为了预防疾病,尤其是感冒,关注天气变化,加减衣服。而且很重要的一点是,如果要去外地,更要知道当地是什么天气情况,决定穿衣和携带的衣服。特别是突然下雨或者降温,加减衣服不当很容易生病。所以对其进行预测是很重要的

  • 数据处理

2.1 数据获取

在“getweather.py”文件中

采用requests.get()方法,请求网页,如果成功访问,则得到的是网页的所有字符串文本

添加了文字的输出让我们能直观地看到访问是否成功

def getHTMLtext(url):
    """请求获得网页内容"""
    try:
        r = requests.get(url, timeout=30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding  # 是中文正常显示
        print("访问成功")
        return r.text
    except:
        print("访问失败")
        return " "

主函数部分则是存好需要的链接,获取到需要的html文件方便后续使用

def main():
    """主函数"""
    print("武汉天气数据获取")
    url1 = 'http://www.weather.com.cn/weather/101200101.shtml'  # 7天天气中国天气网
    url2 = 'http://www.weather.com.cn/weather15d/101200101.shtml'  # 8-15天天气中国天气网
    url_m1 = 'http://www.tianqihoubao.com/lishi/wuhan/month/202201.html'
    url_m2 = 'http://www.tianqihoubao.com/lishi/wuhan/month/202202.html'
    url_m3 = 'http://www.tianqihoubao.com/lishi/wuhan/month/202203.html'
    url_m4 = 'http://www.tianqihoubao.com/lishi/wuhan/month/202204.html'
    url_m5 = 'http://www.tianqihoubao.com/lishi/wuhan/month/202205.html'  # 天气后报网2022年1~5月

    html1 = getHTMLtext(url1)
    data1, data1_7 = get_content(html1)  # 获得1-7天和当天的数据

    html2 = getHTMLtext(url2)
    data8_14 = get_content2(html2)  # 获得8-14天数据
    data14 = data1_7 + data8_14

2.2 数据预处理

因为天气预报7天,8-15天,天气后报三个网页的格式不同,所以需要写三个处理的函数。

   

 

天气预报部分

先建立一个列表储存数据,创建BeautifulSoup对象

def get_content(html):  # getHTMLtext返回的文件是此函数的参数
    """处理得到有用信息保存数据文件,1-7天和当天的数据"""
    final = []  # 初始化一个列表保存数据class为left-div里面找所有的div
    bs = BeautifulSoup(html, "html.parser")  # 创建BeautifulSoup对象
    body = bs.body

    使用网页的开发者工具找到找到需要的数据所在位置

当天的数据在'left-div'中,存在data2中

data2 = body.find_all('div', {'class': 'left-div'})

首先爬取当天的数据

因为存放当天数据的div是第三个,所以取data2[2]中的文本

text = data2[2].find('script').string

# 移除改var data=将其变为json数据

text = text[text.index('=') + 1:-2]  # 移除改var data=将其变为json数据
    jd = json.loads(text)
    dayone = jd['od']['od2']  # 找到当天的数据
    final_day = []  # 存放当天的数据

将24小时的数据爬下来,存进final_day中(od是网页中的标签名)

count = 0
    for i in dayone:
        temp = []
        if count <= 23:
            temp.append(i['od21'])  # 添加时间
            temp.append(i['od22'])  # 添加当前时刻温度
            temp.append(i['od24'])  # 添加当前时刻风力方向
            temp.append(i['od25'])  # 添加当前时刻风级
            temp.append(i['od26'])  # 添加当前时刻降水量
            temp.append(i['od27'])  # 添加当前时刻相对湿度
            temp.append(i['od28'])  # 添加当前时刻控制质量
            # print(temp)
            final_day.append(temp)
        count = count + 1

下面爬7天的数据

可以看到7天的数据在id为“7d”的div中,存在data中

 # 下面爬取7天的数据
    ul = data.find('ul')  # ul 里是在data里找到第一个的ul标签
    li = ul.find_all('li')  # li 里是在ul里找到所有的li标签

并且存在ul和li标签里,所以使用一个循环来遍历每一天的数据,将每一项数据取出并进行预处理

具体在注释中

i = 0  # 控制爬取的天数
    for day in li:  # 遍历找到的每一个li
        if i < 7 and i > 0:
            # for i in range(7):
            temp = []  # 临时存放每天的数据
            date = day.find('h1').string  # 得到日期
            date = date[0:date.index('日') + 1]  # 为从开头到“日”在date总的索引号->取出日期号
            temp.append(date)  # append:在列表末尾添加新的对象

            inf = day.find_all('p')  # 找出li下面的p标签,提取第一个p标签的值,即天气
            temp.append(inf[0].string)  # temp后面加上inf第一项(第一个p)中的文本

            tem_low = i
最低0.47元/天 解锁文章
安哲哲
关注 关注
  • 13
    点赞
  • 160
    收藏
    觉得还不错? 一键收藏
  • 31
    评论
python数据可视化分析
09-13
在天气数据 API 可视化分析中,学生需要申请并调用任意一个天气预报数据 API,例如百度天气、高德天气或者心知天气等,返回 JSON 格式的天气数据,并完成数据可视化分析。学生需要思考作图形式、构建图形框架、编写 ...
天气数据爬虫与可视化分析
07-22
本文是一个开发文档,主要通过对天气数据的抓取,讲述了数据爬虫的一个简单易用的方法,最后对爬取之后的数据用ExtJS进行可视化展示。该案例,很具用一般性,是课程设计和毕业设计不错的参考资料,对开发技术人员也...
pythonpython天气气候数据抓取分析可视化(源码+数据+可视化+报告)【独一无二】
测试开发自动化
04-16 2933
👉博__主👈:米码收割机👉技__能👈:C++/Python语言👉公众号👈:测试开发自动化【获取源码+商业合作】👉荣__誉👈:阿里云博客专家博主、51CTO技术博主👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。
Python爬取天气数据及可视化分析!
Python84310366的博客
11-13 5415
天气预报我们每天都会关注,我们可以根据未来的天气增减衣物、安排出行,每天的气温、风速风向、相对湿度、空气质量等成为关注的焦点。本次使用python中requests和BeautifulSoup库对中国天气网当天和未来14天的数据进行爬取,保存为csv文件,之后用matplotlib、numpy、pandas对数据进行可视化处理和分析,得到温湿度度变化曲线、空气质量图、风向雷达图等结果,为获得未来天气信息提供了有效方法。
2024年网络安全最全Python爬取天气数据及可视化分析!_天气数据可视化分析(1),2024年最新中高级网络安全面试题目汇总解答
2401_84301227的博客
05-06 738
上面这张是南方珠海的控制质量图,可以看出空气质量指数最大也是在健康范围,说明珠海空气非常好,分析可以发现这一天最高空气质量指数达到了35,最低则只有14,并且平均在25左右,通过时间也可以发现,基本在清晨的时候是空气最好的时候(4-9点),在下午是空气污染最严重的时候,所以清晨一般可以去外面呼吸新鲜的空气,那时污染最小。当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
python爬取天气数据进行预测及可视化分析
xzz_777c的博客
03-21 2450
天气预报我们每天都会关注,我们可以根据未来的天气增减衣物、安排出行,每天的气温、风速风向、相对湿度、空气质量等成为关注的焦点。本次使用python中requests和BeautifulSoup库对中国天气网当天和未来14天的数据进行爬取,保存为csv文件,之后用matplotlib、numpy、pandas对数据进行可视化处理和分析,得到温湿度度变化曲线、空气质量图、风向雷达图等结果,为获得未来天气信息提供了有效方法。
Python气象信息可视化方法汇总
qq_42953042的博客
01-19 3619
气象数据可视化是一种将气象数据通过图形、图像等视觉化手段进行呈现,以便更好地理解、分析和预测天气状况的系统。它的发展历程可以追溯到20世纪70年代,随着计算机技术和大数据处理能力的不断提升,气象数据可视化系统也得到了迅速发展,成为气象领域中不可或缺的一部分。
Pandas+Pyecharts | 北京近五年历史天气数据可视化
Python当打之年
07-03 2156
北京市历史天气数据分析历史高温、历史低温分布以及白天、夜晚的风力、风向分布等情况
基于python天气预报系统设计和可视化数据分析
06-18
python或jutyper 都可成功运行,编写的基于爬虫的和TK界面的天气预报系统,可选择多个城市,15天天气,数据绘图处理以及数据保存,代码python和jutyper均可成功运行 (内含py文件和必要文件)
2024年网安最全Python爬取天气数据及可视化分析!_天气数据可视化分析(1)
2301_77033672的博客
05-03 1905
分析可以发现这一天西南风最多,平均风级达到了1.75级,东北风也有小部分1.0级,其余空白方向无来风。统计未来14天的高低温度变化,并绘制出他们的变化曲线图,分别用虚线将他们的平均气温线绘制出来,最后结果如下所示:分析可以发现未来14天高温平均气温为30.5℃,温度还是比较高,但是未来的第8天有降温,需要做好降温准备,低温前面处于平稳趋势,等到第8天开始下降,伴随着高温也下降,整体温度下降,低温平均在27℃左右。
基于python的网络爬虫爬取天气数据及可视化分析python大作业,课程设计报告
06-13
基于python的网络爬虫爬取天气数据及可视化分析 python程序设计报告 源代码+csv文件+设计报告 python期末简单大作业(自己写的,重复率低) 利用python爬取了网站上的城市天气,并用利用可视化展示,有参考文献有...
WeatherSearch:天气数据可视化
03-16
天气搜索 天气数据可视化 家居效果
可视化编程课程设计报告
01-15
这是可视化编程课程设计报告,实现的功能是一个计算机器。欢迎下载
广工可视化课程设计
12-16
广东工业大学计算机学院可视化课程设计,供参考
基于Web的数据可视化教学系统设计与实现
01-13
针对数字化教育的需求,利用Web技术设计完成了一套可视化教学系统。文中在可视化教学需求分析的基础上,利用ASP.NET技术,基于B/S构架利用Access数据库实现了系统的开发。按照实际教学功能的需求,系统可以分为用户登录模块、后台管理、教学资源、测验管理以及师生交流五大功能模块。同时,以用户登录、教学资源管理及测验管理的实现为例说明系统功能的主要实现方式。系统可以满足教学需求,为现代化教学提供了新的技术手段。
基于python的网络爬虫爬取天气数据及可视化分析python大作业(源码+文档说明)高分项目
最新发布
06-10
基于python的网络爬虫爬取天气数据及可视化分析python大作业(源码+文档说明)高分项目,高分项目期末大作业开发的97分高分设计项目,可作为高分课程设计和期末大作业的参考,含有代码注释小白也可看的懂,有能力的...
基于Python爬虫辽宁沈阳天气预报数据可视化系统设计与实现(Django框架) 研究背景与意义、国内外研究现状
杭州.黄老师
01-14 2809
基于Python爬虫辽宁沈阳天气预报数据可视化系统设计与实现(Django框架) 研究背景与意义、国内外研究现状,提供更加方便、直观的服务。通过对辽宁沈阳地区的天气预报数据进行爬取和处理,将数据以可视化的形式呈现给用户,帮助用户更好地了解和预测未来的天气情况。同时,本系统还提供了用户订阅功能,用户可以根据自己的需求选择订阅某一地区的天气预报数据,并通过邮件或短信的方式及时接收相关信息。通过研究国内外的相关研究成果,可以进一步完善和改进本系统,并为天气预报数据的可视化研究提供一定的参考。
天气预报的数据爬取存储和可视化处理项目
m0_64431980的博客
04-17 739
项目名称:天气预报的数据爬取存储和可视化处理项目项目环境:pycharm,python3.9,jupyter notebook 6.4.6等 项目叙述:本项目是通过爬虫技术从中国气象网爬取天气数据,数据存储,并且进行数据可视化
Python爬取城市天气数据,并作数据可视化
热门推荐
m0_61981943的博客
06-05 1万+
本文介绍了如何使用Python爬虫和数据可视化工具,爬取多个城市的天气数据并进行可视化分析。首先,使用Python爬虫从网站上获取多个城市的天气数据,并将数据存储到本地文件中。然后,使用Pandas库读取数据文件,并使用Matplotlib和Seaborn库进行数据可视化分析,包括线性图、热力图、散点图等。最后,根据分析结果进行总结和展望。 通过本文的学习,读者可以了解到如何使用Python进行数据爬取和可视化分析,从而掌握数据分析的基本技能,并应用到实际问题中。同时,也可以了解到如何使用Python
天气预报数据的爬取及可视化的程序设计分析
05-31
天气预报数据的爬取及可视化的程序设计分析可以分为以下几个步骤: 1. 确定数据源:可以选择从天气网、中国天气网等网站上爬取天气数据。 2. 确定爬取工具:可以使用 Python 的 requests 库和 Beautiful Soup 库进行网站数据的爬取。 3. 确定数据存储方式:可以将爬取的数据存储在本地文件中,也可以将其存储在数据库中。 4. 设计数据可视化方案:可以选择使用 Python 的 Matplotlib、Seaborn 等数据可视化库进行数据的可视化。 5. 编写程序:根据以上分析,编写相应的 Python 程序进行数据的爬取、存储和可视化。 6. 分析数据:通过数据可视化,对爬取的数据进行分析,提取出有用的信息,如某地区的温度变化趋势、降雨量等。 7. 优化程序:根据实际应用需求,对程序进行优化,提高程序的效率和稳定性。 总之,天气预报数据的爬取及可视化的程序设计分析需要对数据源、爬取工具、数据存储方式、数据可视化方案等进行综合考虑,最终实现对数据的有效分析和利用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 课程设计 天气预报数据可视化开发 5939

最新评论

  • 课程设计 天气预报数据可视化开发

    菜鸟一号颉: 作者大大,求源码

  • 课程设计 天气预报数据可视化开发

    棒打白骨精: 求原码表情包表情包

  • 课程设计 天气预报数据可视化开发

    棒打白骨精: 求原码表情包表情包

  • 课程设计 天气预报数据可视化开发

    姿态啊: 求源码表情包表情包表情包

  • 课程设计 天气预报数据可视化开发

    m0_51473510: 源代码能不能也发我一份

大家在看

  • 常用正则表达式
  • 数据安全官(CCRC-DSO)和数据安全评估师(CCRC-DSA)
  • Spring Boot源码分析一:启动流程
  • 不用下软件,51建模网上传模型就能直接在网页预览! 456
  • 淘宝文件系统(文件映射) 367

最新文章

2022年1篇

目录

目录

评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

深圳SEO优化公司十堰百度标王多少钱镇江seo优化公司坑梓seo网站推广报价益阳百度网站优化排名报价广州百度seo价格昌吉关键词排名推荐吕梁百搜标王报价绍兴营销网站推荐荷坳百度网站优化排名报价平凉网站优化排名商丘营销型网站建设哪家好南充关键词排名包年推广哪家好梧州建网站报价唐山关键词排名包年推广多少钱淮安网站排名优化公司宿迁网站优化推广公司北海网站建设公司淮安建网站哪家好松原网站关键词优化公司海北建站哪家好北京网站搜索优化哪家好固原seo优化公司张家口网站优化软件多少钱湘西建网站推荐宝鸡优化推荐宁德营销网站价格银川建站价格运城网站优化按天收费内江关键词排名包年推广推荐开封英文网站建设歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化