This kind of task is called Screen scraping. The code I show below just adds a few string-manipulation routines for very basic cleanup, but you can do a much better job with a tool made for screen-scraping, like Beautiful Soup.
import urllib2
import cookielib
cookieJar = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookieJar))
url = "http://www.wunderground.com/global/stations/54511.html?MR=1"
request = urllib2.Request(url)
page = opener.open(request)
# This is one big string
rawdata = page.read()
# This breaks it up into lines
lines_of_data = rawdata.split('\n')
# This is one line in the raw data that looks interesing. I'm going to
# filter the raw data based on the "og:title" text.
#
#'<meta name="og:title" content="Beijing, Beijing | 31° | Clear" />
# The "if line.find(" bit is the filter.
special_lines = [line for line in lines_of_data if line.find('og:title')>-1]
print special_lines
# Now we clean up - this is very crude, but you can improve it with
# exactly what you want to do.
info = special_lines[0].replace('"','').split('content=')[1]
sections = info.split('|')
print sections
Output:
['\t\t<meta name="og:title" content="Beijing, Beijing | 32° | Clear" />']
['Beijing, Beijing ', ' 32° ', ' Clear />']
Edit: By all means, if the particular website offers web services like JSON as in the answer by Xaranke, use that! Not all websites do though, so Beautiful Soup can still be very useful.