91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Python來分析中秋佳節的天氣

發布時間:2021-10-28 18:14:44 來源:億速云 閱讀:133 作者:柒染 欄目:編程語言

本篇文章給大家分享的是有關怎么用Python來分析中秋佳節的天氣,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

中秋佳節將近,不知道各位小伙伴兒有沒有想好去哪里玩呢。不過說實在的,每到節假日,到處都是人山人海,那句“我動也不能動”,我還能唱出來哈!

但是又說回來,假期出游,除了人的因素外,天氣的因素是不是也要考慮下呢,今天,我們就用Python爬蟲帶大家來看看,中秋小長假,哪些地方適宜出游。

獲取數據

數據的獲取,就從中國天氣網站上直接抓取,網絡上的一些 API,有的信息不是很全,只能獲取最近3天的數據,有的又需要付費,還不如自己抓來的痛快。

網站也沒有做什么限制,我們抓數據的時候,只需要控制好訪問頻率,不要影響人家的正常運行就可以。

同時還需要準備四個數據文件

  • 省會城市列表,provincial_capital

  • 全國城市 id 信息表,china-city-list.csv

  • 著名景點名稱列表,attractions

  • 全國景點 id 信息表,china-scenic-list.txt

抓取的過程不再詳細說明了,直接給出完整代碼

# coding = utf-8
"""
@author: zhou
@time:2019/9/5 14:36
@File: main.py
"""
import requests
from bs4 import BeautifulSoup
import time
import os
def get_data(name, city, code):
 print("正在下載城市%s的數據" % city)
 url = 'http://www.weather.com.cn/weather15d/%s.shtml' % code[2:]
 res = requests.get(url).content.decode()
 content = BeautifulSoup(res, "html.parser")
 weather_list = content.find('ul', attrs={'class': 't clearfix'}).find_all('li')
 items = map(parse_item, weather_list)
 save_to_csv(name, city, items)
 time.sleep(1)
def parse_item(item):
 time = item.find('span', attrs={'class': 'time'}).text
 wea = item.find('span', attrs={'class': 'wea'}).text
 tem = item.find('span', attrs={'class': 'tem'}).text
 wind = item.find('span', attrs={'class': 'wind'}).text
 wind_level = item.find('span', attrs={'class': 'wind1'}).text
 result = {
 "time": time,
 "wea": wea,
 "tem": tem,
 "wind": wind,
 "wind_level": wind_level
 }
 return result
def save_to_csv(name, city, data):
 if not os.path.exists('%s_data.csv' % name):
 with open('%s_data.csv' % name, 'a+', encoding='utf-8') as f:
 f.write('city,time,wea,tem,wind,wind_level\n')
 for d in data:
 try:
 row = '{},{},{},{},{},{}'.format(city,
 d['time'],
 d['wea'],
 d['tem'],
 d['wind'],
 d['wind_level'])
 f.write(row)
 f.write('\n')
 except:
 continue
 else:
 with open('%s_data.csv' % name, 'a+', encoding='utf-8') as f:
 for d in data:
 try:
 row = '{},{},{},{},{},{}'.format(city,
 d['time'],
 d['wea'],
 d['tem'],
 d['wind'],
 d['wind_level'])
 f.write(row)
 f.write('\n')
 except:
 continue
if __name__ == '__main__':
 import pandas as pd
 provincial = pd.read_csv('provincial_capital')
 china_city_code = pd.read_csv('china-city-list.csv')
 china_scenic_code = pd.read_csv('china-scenic-list.txt', sep='\t')
 china_scenic_code.columns = ['ID', 'name', 'area', 'provincial']
 attraction = pd.read_csv('attractions')
 provincial_data = pd.DataFrame()
 attraction_data = pd.DataFrame()
 # 省會抓取
 for i in provincial['city'].values.tolist():
 for j in china_city_code['City_CN'].values.tolist():
 if j == i:
 provincial_data = pd.concat([china_city_code[china_city_code['City_CN'] == j], provincial_data])
 for city in provincial_data['City_CN'].values.tolist():
 city_id = provincial_data[provincial_data['City_CN'] == city]['City_ID'].values.tolist()[0]
 get_data('weather', city, city_id)
 # 景點抓取
 for a in attraction['attractions'].values.tolist():
 for c in china_scenic_code['name'].values.tolist():
 if c == a:
 attraction_data = pd.concat([china_scenic_code[china_scenic_code['name'] == c], attraction_data])
 for attrac in attraction_data['name'].values.tolist():
 city_id = attraction_data[attraction_data['name'] == attrac]['ID'].values.tolist()[0]
 get_data('attraction', attrac, city_id)

省會天氣分析

我們首先來看看省會天氣,畢竟省會城市是每個省份的中心,也是旅游的重點城市。

降水和溫度

對于降水的概率,我采取的是如果預報是有雨,則設置降水概率為80,如果是預報是晴,則降水概率為20.

weather_dict = {
 "snow": 100,
 "rain": 80,
 "cloud": 50,
 "overcast": 60,
 "sun": 20
}

在中秋節這一天,各個省會城市的降水和溫度

怎么用Python來分析中秋佳節的天氣

能夠看出,大部分城市在這一天都是天公不作美的,降水的概率都非常的大。而溫度的話,大概率降水的城市,溫度都不是很高,早晚出行,可能還會很涼哦。溫度最高的應該就是南昌了,還能達到30°C,一個艷陽高照的日子,是不是去看看革命圣地?

接下來我們再通過一個雙軸圖來更加直觀的查看下降水和溫度的情況

怎么用Python來分析中秋佳節的天氣

看來在進入9月之后,全國普遍的溫度都在慢慢回落了,溫度適宜出行,但是就是會伴隨著綿綿的細雨呀。

再來看下幾大城市在中秋前后一周的天氣情況

北京

怎么用Python來分析中秋佳節的天氣

北京的氣溫還是比較平穩的,沒有太大的波動,可能早晚一件薄外套就能hold的住,不過這幾天,應該都會是陰蒙蒙的,不會有太好的陽光。

上海

怎么用Python來分析中秋佳節的天氣

上海的降水概率要比北京大一些,不過溫度倒是相差不多。

杭州

怎么用Python來分析中秋佳節的天氣

杭州的平均溫度還是要高一些,降水的概率也較高,畢竟典型的東南沿海城市嘛,雨天的西湖,你期待不?

成都

怎么用Python來分析中秋佳節的天氣

成都基本天天下雨了,那還出門看大熊貓嘛,這是個問題啊!

著名景區天氣

下面我們再來看看一些著名景區的天氣情況,我大好河山,景區太多了,只能簡單列舉一些最著名的地方來看看了。

降水情況

怎么用Python來分析中秋佳節的天氣

在我選取的這些景區當中,大部分都是會有降水的,不過也會有陽光明媚的地方。

比如說黃山和八達嶺長城,預計會是晴天,去爬爬長城和黃山,是不錯的選擇。

而美麗的九寨溝和西湖等,雖說會下雨,但是在雨天漫步,也不失為一種情趣吧。

降水和溫度

我們再來看看各地的溫度情況

怎么用Python來分析中秋佳節的天氣

不知道為啥承德的溫度會那么低,感覺去避暑已經不太合適了,而長白山已經只有7°C了,慌不慌?

降水與溫度分布

最后,我們再來看看,中秋節當天,降水和氣溫的分布情況

降水

怎么用Python來分析中秋佳節的天氣

進入9月,東南沿海降水明顯增多,京津地區也是陰雨連綿,這是一場秋雨一場寒的節奏嗎!

氣溫

怎么用Python來分析中秋佳節的天氣

東南半壁,溫度還是比較適宜的,現在的天氣下,不冷不熱,正是出游好溫度。

親愛的伙伴,你中秋是在哪呢?有多少是跟我一樣在家躺尸的!

以上就是怎么用Python來分析中秋佳節的天氣,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

襄汾县| 炎陵县| 清远市| 汉川市| 湖南省| 宜丰县| 潍坊市| 长岭县| 德保县| 新干县| 乃东县| 石首市| 五河县| 双鸭山市| 桦甸市| 呼和浩特市| 手游| 新安县| 会宁县| 红桥区| 宜春市| 太湖县| 兰西县| 怀柔区| 都兰县| 小金县| 阳新县| 青岛市| 项城市| 建水县| 泸溪县| 呼伦贝尔市| 明星| 新泰市| 望江县| 孟村| 三门峡市| 南皮县| 焦作市| 呼图壁县| 金山区|