mirror of
https://github.com/Mikaela/Limnoria.git
synced 2025-01-23 02:24:12 +01:00
Add Windchill and Severe Weather to Weather.wunder
This commit is contained in:
parent
90f18a394f
commit
ec3dba0a52
@ -379,6 +379,7 @@ class Weather(callbacks.Privmsg):
|
|||||||
|
|
||||||
_wunderUrl = 'http://mobile.wunderground.com/cgi-bin/' \
|
_wunderUrl = 'http://mobile.wunderground.com/cgi-bin/' \
|
||||||
'findweather/getForecast?query='
|
'findweather/getForecast?query='
|
||||||
|
_wunderSevere = re.compile(r'font color=#ff0000>([^<]+)<', re.I)
|
||||||
_wunderLoc = re.compile(r'Page (.+?) Forecast</title>', re.I | re.S)
|
_wunderLoc = re.compile(r'Page (.+?) Forecast</title>', re.I | re.S)
|
||||||
_wunderMultiLoc = re.compile(r'<a href="([^"]+)', re.I | re.S)
|
_wunderMultiLoc = re.compile(r'<a href="([^"]+)', re.I | re.S)
|
||||||
def wunder(self, irc, msg, args, loc):
|
def wunder(self, irc, msg, args, loc):
|
||||||
@ -388,6 +389,10 @@ class Weather(callbacks.Privmsg):
|
|||||||
"""
|
"""
|
||||||
url = '%s%s' % (self._wunderUrl, urllib.quote(loc))
|
url = '%s%s' % (self._wunderUrl, urllib.quote(loc))
|
||||||
text = webutils.getUrl(url)
|
text = webutils.getUrl(url)
|
||||||
|
severe = ''
|
||||||
|
m = self._wunderSevere.search(text)
|
||||||
|
if m:
|
||||||
|
severe = ircutils.bold(' %s' % m.group(1))
|
||||||
if 'Search not found' in text:
|
if 'Search not found' in text:
|
||||||
self._noLocation()
|
self._noLocation()
|
||||||
if 'Click on a city name' in text:
|
if 'Click on a city name' in text:
|
||||||
@ -463,8 +468,18 @@ class Weather(callbacks.Privmsg):
|
|||||||
resp.append('Wind: %s at %s %s.' % tuple(info['Wind'].split()))
|
resp.append('Wind: %s at %s %s.' % tuple(info['Wind'].split()))
|
||||||
except (ValueError, TypeError):
|
except (ValueError, TypeError):
|
||||||
pass
|
pass
|
||||||
|
try:
|
||||||
|
(chill, deg, unit) = info['Dew Point'].split()
|
||||||
|
if convert:
|
||||||
|
chill = self._getTemp(int(chill), deg, unit, msg.args[0])
|
||||||
|
else:
|
||||||
|
dew = deg.join((chill, unit))
|
||||||
|
resp.append('Windchill: %s.' % chill)
|
||||||
|
except (ValueError, TypeError):
|
||||||
|
pass
|
||||||
resp.append('Pressure: %s.' % info['Pressure'])
|
resp.append('Pressure: %s.' % info['Pressure'])
|
||||||
resp.append('Visibility: %s.' % info['Visibility'])
|
resp.append('Visibility: %s.' % info['Visibility'])
|
||||||
|
resp.append(severe)
|
||||||
resp = map(utils.htmlToText, resp)
|
resp = map(utils.htmlToText, resp)
|
||||||
irc.reply(' '.join(resp))
|
irc.reply(' '.join(resp))
|
||||||
else:
|
else:
|
||||||
|
Loading…
Reference in New Issue
Block a user