Python爬取中国天气网天气数据.

一、主题式网络爬虫设计方案

1.主题式网络爬虫名称

名称:Python爬取中国天气网天气数据

2.主题式网络爬虫爬取的内容与数据特征分析

本次爬虫主要爬取中国天气网天气数据

3.主题式网络爬虫设计方案概述(包括实现思路与技术难点)

requests库实现发送请求、获取响应。  
beautifulsoup实现数据解析、提取和清洗  
pyechart模块实现数据可视化

二、主题页面的结构特征分析

 华东地区天气预报  华东天气数据

 conMidtab 页面整体标签

conMidtab2 地区总体标签

三、网络爬虫程序设计

import requests
from bs4 import BeautifulSoup
from pyecharts import BarALL_DATA = []
def send_parse_urls(start_urls):headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36"}for start_url in start_urls:response = requests.get(start_url,headers=headers)# 编码问题的解决response = response.text.encode("raw_unicode_escape").decode("utf-8")soup = BeautifulSoup(response,"html5lib") #lxml解析器:性能比较好,html5lib:适合页面结构比较混乱的div_tatall = soup.find("div",class_="conMidtab") #find() 找符合要求的第一个元素tables = div_tatall.find_all("table") #find_all() 找到符合要求的所有元素的列表for table in tables:trs = table.find_all("tr")info_trs = trs[2:]for index,info_tr in enumerate(info_trs): # 枚举函数,可以获得索引# print(index,info_tr)# print("="*30)city_td = info_tr.find_all("td")[0]temp_td = info_tr.find_all("td")[6]# if的判断的index的特殊情况应该在一般情况的后面,把之前的数据覆盖if index==0:city_td = info_tr.find_all("td")[1]temp_td = info_tr.find_all("td")[7]city=list(city_td.stripped_strings)[0]temp=list(temp_td.stripped_strings)[0]ALL_DATA.append({"city":city,"temp":temp})return ALL_DATAdef get_start_urls():start_urls = ["http://www.weather.com.cn/textFC/hb.shtml","http://www.weather.com.cn/textFC/db.shtml","http://www.weather.com.cn/textFC/hd.shtml","http://www.weather.com.cn/textFC/hz.shtml","http://www.weather.com.cn/textFC/hn.shtml","http://www.weather.com.cn/textFC/xb.shtml","http://www.weather.com.cn/textFC/xn.shtml","http://www.weather.com.cn/textFC/gat.shtml",]return start_urlsdef main():"""主程序逻辑展示全国实时温度最低的十个城市气温排行榜的柱状图"""# 1 获取所有起始urlstart_urls = get_start_urls()# 2 发送请求获取响应、解析页面data = send_parse_urls(start_urls)# print(data)# 4 数据可视化#1排序data.sort(key=lambda data:int(data["temp"]))#2切片,选择出温度最低的十个城市和温度值show_data = data[:10]#3分出城市和温度city = list(map(lambda data:data["city"],show_data))temp = list(map(lambda data:int(data["temp"]),show_data))#4创建柱状图、生成目标图chart = Bar("中国最低气温排行榜") #需要安装pyechart模块chart.add("",city,temp)chart.render("tempture.html")if __name__ == '__main__':main()

    四、可视化

柱状图:

 最后:如果你对Python感兴趣,想要学习Python,希望可以帮到你,一起加油!以上是给大家分享的Python全套学习资料,都是我自己学习时整理的:

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

图片

图片

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,还有环境配置的教程,给大家节省了很多时间。

图片

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

图片

四、入门学习视频全套

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

图片

图片

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

图片

图片

 **学习资源已打包,需要的小伙伴可以戳这里:【学习资料】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/35810.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ET实现游戏中邮件系统逻辑思路(服务端)

ET是一个游戏框架,用的编程语言是C#,游戏引擎是Unity,框架作者:熊猫 ET社区 在游戏中我们通常都会看到有邮件系统,邮件系统的作用有给玩家通知、发放奖励等 下面小编使用ET框架带大家看一下邮件系统的一种实现方…

「C系列」C 经典练习实例

文章目录 1. 基本输入输出2. 字符串操作3. 数组与循环4. 函数与递归5. 逻辑与条件6. 数学问题7. 数字与数学8. 数组与字符串9. 逻辑与条件10. 结构体和联合体11. 指针12. 文件操作13. 动态内存分配相关链接 C语言经典练习实例及详细代码可以涵盖多个方面,从基础输入…

IBM IMM2服务器硬件监控指标解读

随着企业IT架构的日益复杂,服务器的稳定运行对于保障业务连续性至关重要。IBM IMM2(Integrated Management Module 2)作为IBM服务器的一个重要组件,为服务器的远程管理和监控提供了强大的支持。监控易作为一款专业的IT基础设施监控…

中国近10年AGV共部署了351700台……

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 根据网络上公开数据获得如下信息。仅供参考。 如下为中国近十年AGV部署的公开数据: 2014-2018年,中国AGV机器人累计销量达…

云环境中的数据加密策略

对于云环境中的数据,加密策略有何特殊考虑? 在云环境中,数据加密策略确实需要特别的考虑,因为云服务提供商可能无法直接访问未经加密的数据。这些考虑包括: 数据生命周期加密:由于数据在传输、存储和处理…

代码随想三刷贪心篇3

代码随想三刷贪心篇3 134. 加油站题目代码135. 分发糖果题目代码860. 柠檬水找零题目代码406. 根据身高重建队列题目代码134. 加油站 题目 链接 代码 class Solution {public int canCompleteCircuit(int[] gas, int[] cost) {int curSum

没有思考过 Embedding,不足以谈 AI

在当今的人工智能(AI)领域,Embedding 是一个不可或缺的概念。如果你没有深入理解过 Embedding,那么就无法真正掌握 AI 的精髓。接下来,我们将深入探讨 Embedding 的基本概念。 1. Embedding的基本概念 1.1 什么是 Emb…

Postman接口工具测试详解

Postman是一款强大的API开发与测试工具,它帮助开发者设计、测试、文档化和监控API。下面是一些关于如何使用Postman进行接口测试的详细步骤: 1. 安装Postman 首先,访问Postman官网(https://www.postman.com/downloads/)下载并安装适合你操作…

【数据采集】亮数据浏览器、亮网络解锁器实战指南

前言 继上次我们写了数据采集与AI分析,亮数据通义千问助力跨境电商前行的文章之后,好多小伙伴来后台留言,表示对亮数据的数据采集非常感兴趣,并且感觉用起来非常顺手,大大减少了小白用户获取数据的成本。 在这儿&…

【python爬虫实战】爬取书店网站的 书名价格(注释详解)

思路来源:b站视频【【Python爬虫】爆肝两个月!拜托三连了!这绝对是全B站最用心(没有之一)的Python爬虫公开课程,从入门到(不)入狱 !-哔哩哔哩】 https://b23.tv/M79rxMd …

docker 学习之路

文章目录 1、官方文档2、常用命令挂载Docker容器内运行的脚本或命令常用 3、介绍4、Dockerfile5、问题6、链接 ​ 1、官方文档 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux…

基于 Paimon 的袋鼠云实时湖仓入湖实战剖析

在当今数据驱动的时代,企业对数据的实施性能力提出了前所未有的高要求。为了应对这一挑战,构建高效、灵活且可扩展的实时湖仓成为数字化转型的关键。本文将深入探讨袋鼠云数栈如何通过三大核心实践——ChunJun 融合 Flink CDC、MySQL 一键入湖至 Paimon …

我用低代码平台自己搭建了一套MES应用系统,1天搞定!

MES系统是什么 MES系统是一套面向制造企业车间执行层的生产信息化管理系统。它能够为操作人员和管理人员提供计划的执行、跟踪以及所有资源(包括人、设备、物料、客户需求等)的当前状态。通过MES系统可以对从订单下达到产品完成的整个生产过程进行优化管…

Intellij Idea显示回退和前进按钮的方法

方法1 使用快捷键&#xff1a; 回到上一步 ctrl alt <-&#xff08;左方向键&#xff09;回到下一步 ctrl alt ->&#xff08;右方向键&#xff09; 方法2&#xff1a; Preferences -> Appearance & Behavior -> Menus and Toolbars -> Navigation B…

【CVPR 2024】目标检测 与检测相关的论文

3D 目标检测 UniMODE&#xff1a;统一的单目 3D 对象检测 实现包括室内和室外场景的统一单目 3D 对象检测在机器人导航等应用中具有重要意义。然而&#xff0c;涉及数据的各种场景来训练模型会带来挑战&#xff0c;因为它们具有显著不同的特性&#xff0c;例如不同的几何特性…

生信技能50 - 本地构建Clinvar数据库VCF变异位点快速搜索功能

1. Clinvar数据库文件下载 参考本人文章: 生信技能40 - Clinvar数据库VCF文件下载和关键信息提取 # 下载GRCh37 vcf wget -c -b https://ftp.ncbi.nlm.nih.gov/pub/clinvar/vcf_GRCh37/clinvar_20240624.vcf.gz wget https://ftp.ncbi.nlm.nih.gov/pub/clinvar/vcf_GRCh37/…

森林草原火险因子综合监测系统解决方案

一、概述 根据应急管理部和国家统计局发布的数据&#xff0c;2023 年全国共接报火灾 74.5 万起&#xff0c;其中森林火灾 328 起&#xff0c;共发生草原火灾 15 起。为应对这一严峻挑战我国正面临着森林草原火险的严重威胁。森林火灾不仅对生态文明建设构成严重威胁&#xff0c…

顶顶通呼叫中心中间件-透传uuid并且导入对端变量到本端(mod_cti基于Freeswitch)

一、配置拨号方案 win-ccadmin配置方法 点击拨号方案 -> 点击进入排队 -> 根据图中配置。如果不是排队转人工是机器人转人工那么就是在机器人那个拨号方案配置&#xff0c;并且需要配置在"cti_robot"之前即可 action"set" data"sip_h_X_tas…

第2章.现场设备的物联网模式--设备网关

第2章.现场设备的物联网模式 本章列出了与现场设备或事物相关的关键模式。阅读本章后&#xff0c;您将能够识别物联网架构中这些模式的存在。它提供了有关模式适合或适用的场景的详细信息&#xff0c;以及需要考虑的约束。这将帮助您相对轻松地理解现有的物联网架构。 本章涵盖…

富格林:汲取可信经验击败暗箱

富格林指出&#xff0c;暗箱的主要攻击对象仍然是没有可信经验加持的新手投资者&#xff0c;一些不正规平台或个人会采用暗箱套路来欺诈圈套投资者。虽然损失的套路是不断更新&#xff0c;但万变不离其中&#xff0c;我们汲取可信的经验可以在日后的投资中避免损失。以下是富格…