筆記六 python之獲取介面資料 天氣預報

2021-08-22 06:03:38 字數 3358 閱讀 7233

# 引入請求包

import requests

url = '鄭州市&output=json&ak=tuegdhcvwi6forqnlm0qmxxy9n0okoiq&callback=?'

# 1.通過請求拿回資料

response = requests.get(url)

print(response)

# 2.將資料轉換為字典

result = response.json()

date = result['date']

print(date)

def today():

if currentcity == city:

weather = weather_data[0]

pm = inf['pm25']

pm = int(pm)

if (pm > 0) and (pm < 35):

air_pm = '優'

elif (pm >= 35) and (pm < 75):

air_pm = '良'

elif (pm >= 75) and (pm < 115):

air_pm = '輕度汙染'

elif (pm >= 115) and (pm < 150):

air_pm = '中度汙染'

elif (pm >= 150) and (pm < 250):

air_pm = '重度汙染'

else:

air_pm = '嚴重汙染'

print('* 查詢城市:%s ' % currentcity)

print('* pm值:%s ' % inf['pm25'])

print('* 汙染指數:%s' % air_pm)

print('* 當前溫度:%s' % weather['date'])

print('* 風向:%s' % weather['wind'])

print('* 天氣:%s' % weather['weather'])

print('* 溫度:%s' % weather['temperature'])

def future():

wednesday = weather_data[1]

thursday = weather_data[2]

finday = weather_data[3]

print('*********%s未來三天天氣預報************' % city)

print('* 日期:%s' % wednesday['date'])

print('* 天氣:%s' % wednesday['weather'])

print('* 風向:%s' % wednesday['wind'])

print('* 溫度:%s' % wednesday['temperature'])

print('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')

print('* 日期:%s' % thursday['date'])

print('* 天氣:%s' % thursday['weather'])

print('* 風向:%s' % thursday['wind'])

print('* 溫度:%s' % thursday['temperature'])

print('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')

print('* 日期:%s' % finday['date'])

print('* 天氣:%s' % finday['weather'])

print('* 風向:%s' % finday['wind'])

print('* 溫度:%s' % finday['temperature'])

while true:

print('* 歡迎使用智遊天氣查詢工具 *')

print('* 1.查詢該城市的實時天氣 *')

print('* 2.查詢該城市的未來三天天氣 *')

print('* 0.退出程式 *')

city = input('請輸入您要查詢的城市:')

if city == '0':

print('感謝使用,下次再會!')

break

import requests

url = '' \

'weather?location=%s&output=json&ak=tuegdhcvwi6forqnlm0qmxxy9n0okoiq&callback=?' % city

# 1.通過請求拿回資料

response = requests.get(url)

# 2.將資料轉換為字典

result = response.json()

# 天氣預報中的 error的值如果是0,表示輸入的城市能查到天氣預報,否則沒有天氣預報資料,返回的error的值不為0

error = result.get('error')

error = int(error)

if error == 0:

while true:

choose = input('* 請輸入您的操作(退出請輸入q): ')

if choose == 'q':

break

try:

choose = int(choose)

except:

print('輸入有誤!請重新輸入!')

continue

else:

if choose < 1 or choose > 2:

print('您輸入的選項不存在!請重新輸入!')

continue

else:

value = result['results']

inf = value[0]

currentcity = inf['currentcity']

weather_data = inf['weather_data']

if choose == 1:

today()

elif choose == 2:

future()

else:

print('您輸入的城市沒有天氣預報,請重新輸入!')

continue

python之raw input (學習筆記六)

python之raw input 學習筆記六 我們經常使用raw input 讀取使用者的輸入,如下例子所示 name raw input please input your name 截圖如下 下面簡單說下,raw input 與if搭配使用,指令碼如下 usr bin env python co...

Python學習筆記之六 Python中的類

類 class 是物件導向程式設計 oop,object oriented programming 實現資訊封裝的基礎。類是一種使用者定義的引用資料型別,也稱類型別。每個類包含資料說明和一組運算元據或傳遞訊息的函式。例項化 根據類來建立物件被稱為例項化。屬性 通過例項可以訪問的變數被稱為屬性。方法 ...

Python介面自動化之pymysql資料庫操作

在自動化過程中,我們需要查詢資料庫,校驗結果是否正確,比如充值完成之後,需要查詢資料庫,檢視充值是否成功。以下主要介紹,pymysql安裝 操作流程 語法基礎及封裝運算元據庫類。一pymysql介紹及安裝 mysql應該說是如今使用最為普遍的資料庫了,沒有之一,而python作為最為流行的語言之一,...