J'utilise google site pour récupérer des informations météorologiques, je veux trouver des valeurs entre les balises XML. Code suivant me donner les conditions météorologiques d'une ville, mais je ne peux pas obtenir d'autres paramètres tels que la température et, si possible, expliquer travail de fonction split implicite dans le code:Comment implémenter python pour trouver de la valeur entre balises xml?
import urllib
def getWeather(city):
#create google weather api url
url = "http://www.google.com/ig/api?weather=" + urllib.quote(city)
try:
# open google weather api url
f = urllib.urlopen(url)
except:
# if there was an error opening the url, return
return "Error opening url"
# read contents to a string
s = f.read()
# extract weather condition data from xml string
weather = s.split("<current_conditions><condition data=\"")[-1].split("\"")[0]
# if there was an error getting the condition, the city is invalid
if weather == "<?xml version=":
return "Invalid city"
#return the weather condition
return weather
def main():
while True:
city = raw_input("Give me a city: ")
weather = getWeather(city)
print(weather)
if __name__ == "__main__":
main()
Merci
Voir aussi la http://stackoverflow.com/questions/3106480/ associée pour une solution basée sur XML parseurs utiliser –