Hoy, te enseñaré cómo usar Python para implementar un sistema de consulta meteorológica. Xiaobai también puede implementarlo. Probemos.
El código general:
import urllib.request
import gzip
import json
print ('------ consulta meteorológica ------')
def get_weather_data ():
city_name = input ('Por favor ingrese el nombre de la ciudad que desea para consultar: ')
url1 =' http:
//wthrcdn.etouch.cn/weather_mini? city = '+ urllib.parse.quote (city_name ) url2 =' http: //wthrcdn.etouch.cn/weather_mini? citykey = 101010100 '#URL
1 solamente Debe ingresar el nombre de la ciudad y la URL 2 debe ingresar el código de la ciudad
#print (url1)
weather_data = urllib.request.urlopen (url1) .read () #Read
webpage data
weather_data = gzip.decompress (weather_data) .decode ('utf-8') #Descomprime los
datos de la página web
weather_dict = json.loads (weather_data) #Convierte los
datos json en dict data
return weather_dict
def show_weather (weather_data):
weather_dict = weather_data #Convertir
datos json para dict data
if weather_dict.get ('desc') = = 'invilad-citykey':
print ('El nombre de la ciudad que ingresaste es incorrecto, o el centro meteorológico no está incluido Tu ciudad ')
elif weather_dict.get (' desc ') = =' OK ':
pronóstico = weather_dict.get (' datos '). get (' pronóstico ')
print (' Ciudad: ', weather_dict.get ( 'datos') .get ('ciudad'))
print ('temperatura:', weather_dict.get ('datos'). get ('wendu') + '℃')
print ('un resfriado:', weather_dict.get ('datos') .get ('ganmao'))
print ('Dirección del viento:', pronóstico [0] .get ('fengxiang'))
print ('Nivel de viento:', pronóstico [0] .get ('fengli '))
print (' Temperatura alta: ', pronóstico [0] .get (' alto '))
print (' Temperatura baja: ', pronóstico [0] .get (' baja '))
print (' clima: ', pronóstico [0] .get ('tipo'))
print ('fecha:', pronóstico [0] .get ('fecha'))
print ('*******************************')
four_day_forecast = input ('Si mostrar el tiempo para los próximos cuatro días, sí / No: ')
if four_day_forecast ==' Sí 'o' Y 'o'y':
para i en el rango (1,5):
print ('fecha:', pronóstico [i] .get ('fecha '))
print (' Dirección del viento: ', pronóstico [i] .get (' fengxiang '))
print (' Nivel de viento: ', pronóstico [i] .get (' fengli '))
print (' Temperatura alta: ' , pronóstico [i] .get ('alto'))
print ('Baja temperatura:', pronóstico [i] .get ('bajo'))
print ('clima:', pronóstico [i] .get ('tipo' ))
imprimir ('- -------------------------')
imprimir ('************** ****** *************** ')
show_weather (get_weather_data ())
Lo anterior son los pasos de implementación específicos.
Parte del contenido del artículo proviene de Internet, intrusión y eliminación de contactos * La
referencia del artículo proviene de http://http.taiyangruanjian.com/news/59271.html