Skip to content

Instantly share code, notes, and snippets.

@limitedmage
Created February 19, 2010 17:05
Show Gist options
  • Save limitedmage/308912 to your computer and use it in GitHub Desktop.
Save limitedmage/308912 to your computer and use it in GitHub Desktop.
## get the weather condition (rainy, cloudy) for any given city
## by @limitedmage julianapena.com
import urllib2
def getWeather(city):
#create google weather api url
url = "http://www.google.com/ig/api?weather=" + urllib2.quote(city)
try:
# open google weather api url
f = urllib2.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()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment