2012-05-27 22:30:59 -04:00
|
|
|
#!/usr/bin/env python
|
|
|
|
"""
|
|
|
|
wuvt.py - Phenny WUVT Module
|
|
|
|
Copyright 2012, Randy Nance, randynance.info
|
|
|
|
|
|
|
|
http://github.com/randynobx/phenny/
|
|
|
|
"""
|
|
|
|
|
|
|
|
from urllib.error import URLError, HTTPError
|
2012-06-02 01:17:09 -04:00
|
|
|
from tools import GrumbleError
|
2012-05-27 22:30:59 -04:00
|
|
|
import re
|
|
|
|
import web
|
|
|
|
|
|
|
|
re.MULTILINE
|
|
|
|
r_play = re.compile(r'^(.*?) - (.*?)$')
|
|
|
|
r_dj = re.compile(r'Current DJ: </span>\n(.+?)<')
|
|
|
|
|
|
|
|
def wuvt(phenny, input) :
|
|
|
|
try:
|
|
|
|
playing = web.get('http://www.wuvt.vt.edu/playlists/latest_track.php')
|
|
|
|
djpage = web.get('http://www.wuvt.vt.edu/playlists/current_dj.php')
|
|
|
|
except (URLError, HTTPError):
|
2012-06-02 01:17:09 -04:00
|
|
|
raise GrumbleError('Cannot connect to wuvt')
|
2012-05-27 22:30:59 -04:00
|
|
|
play= r_play.search(playing)
|
2012-06-10 01:14:08 -04:00
|
|
|
song = play.group(2)
|
|
|
|
artist = play.group(1)
|
2012-05-27 22:30:59 -04:00
|
|
|
dj = r_dj.search(djpage).group(1)
|
|
|
|
|
|
|
|
if song and artist:
|
2012-06-10 01:17:00 -04:00
|
|
|
phenny.reply('DJ {0} is currently playing: {1} by {2}'
|
|
|
|
.format(dj.strip(), song.strip(), artist.strip()))
|
2012-05-27 22:30:59 -04:00
|
|
|
else:
|
|
|
|
phenny.reply('Cannot connect to wuvt')
|
|
|
|
wuvt.commands = ['wuvt']
|