数据分析 -- 成都天气分析(2011-2019)

本文通过对2011年至2019年成都天气数据的获取、处理、清洗和分析,展示了气温的整体情况和变化幅度,按月的温度分布,不同天气类型的统计,以及风向等信息。特别指出雨天减少、阴天增加的趋势,暗示成都空气湿度可能下降,生活环境更加宜人。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 数据获取

import requests
from lxml import etree
import json
import time

class ChengduClimate:
	def __init__(self):
		self.headers = {
   "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"}

	def parse_url(self,url):
		print(url)
		response = requests.get(url,headers=self.headers)
		return response.content

	def get_content_list(self,html_str):#提取数据
		html = etree.HTML(html_str)
		li_list = html.xpath("//ul[@class='lishitable_content clearfix']/li")
		content_list =[]
		for li in li_list[:-1]:
			item = {
   }
			item["date"] = li.xpath("./div/text()")[0] if len(li.xpath("./div/text()"))>4 else li.xpath("./div/a/text()")[0]
			item["max_temperture"] = li.xpath("./div[2]/text()")[0] if len(li.xpath("./div[2]/text()"))>0 else None
			item["min_temperture"] = li.xpath("./div[3]/text()")[0] if len(li.xpath("./div[3]/text()"))>0 else None
			item["weather"] = li.xpath("./div[4]/text()")[0] if len(li.xpath("./div[4]/text()"))>0 else None
			item["wind_direction"] = li.xpath("./div[5]/text()")[0].strip() if len(li.xpath("./div[5]/text()"))>0 else None
			content_list.append(item)
			print(item)

		return content_list


	def save_content_list(self,content_list):
		with open("chengdu tianqi.txt","a",encoding="utf-8") as f:
			for content in content_list:
				f.write(json.dumps(content,ensure_ascii=False))
				f.write("\n")
		print("保存成功")

	def run(self):
		for i in range
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天山下小花家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值