天気予報urllib 2.urlopen(url)

1558 ワード

#!/uer/bin/env python
# encoding: utf-8

import re
import urllib2
import time
def getHtml(url):
    page = urllib2.urlopen(url)
    mybytes = page.read()
    html = mybytes.decode("utf8")
    page.close()
    return html

def getWeather(html):
    reg = r'<a title=.*?>(.*?)</a>.*?'
    reg += r'<img.*?alt="(.*?)".*?'
    reg += r'<img.*?alt="(.*?)".*?'
    reg += r'<span>(.*?)</span>.*?<b>(.*?)</b>'
    weatherList = re.compile(reg).findall(html)
    return weatherList

while 1:
    adress = raw_input("               (shanghai):")
    weatherList = getWeather(getHtml(r"http://www.weather.com.cn/%s/index.shtml" %adress))
    for weather in weatherList :
        print '%s,PM:%s/AM:%s %s/%s' %(format(weather[0]),format(weather[1]),format(weather[2]),format(weather[3]),format(weather[4]))

    print '
'     result = raw_input("are you want close?")     if result == 'y' or result == 'Y':             break

実行結果:
検索する省市のピンインを入力してください全書(shanghai):shanghai
上海、PM:曇りのち晴れ/AM:曇りのち晴れ29℃/21℃
宝山、PM:晴/AM:晴28℃/21℃
嘉定、PM:晴/AM:晴29℃/21℃
崇明、PM:晴/AM:晴28℃/19℃
奉賢、PM:曇りのち晴れ/AM:曇りのち晴れ26℃/21℃
浦東南匯、PM:曇りのち晴れ/AM:曇りのち晴れ27℃/19℃
浦東、PM:曇りのち晴れ/AM:曇りのち晴れ28℃/20℃
金山、PM:曇りのち晴れ/AM:曇りのち晴れ27℃/20℃
青浦、PM:曇りのち晴れ/AM:曇りのち晴れ29℃/20℃
松江、PM:曇りのち晴れ/AM:曇りのち晴れ29℃/21℃
閔行、PM:曇りのち晴れ/AM:曇りのち晴れ29℃/21℃
徐家匯、PM:曇りのち晴れ/AM:曇りのち晴れ29℃/21℃
are you want close?