#! /usr/bin/python

from BeautifulSoup import BeautifulSoup
from urllib2 import *
from urllib import *
from sys import *

url="http://www.mtcbus.org/routes.asp"

def getpage(query):
	"""Gets the dictionary list of stops
	given a bus number as query
	Returns soup"""
	
	params = {}
	params['cboRouteCode'] = query
	params = urlencode(params)
	line220 = (urlopen(url,params).read().split("\n"))[219]
	if "error" in line220:
		print "Invalid bus number"
		exit()
	soup = BeautifulSoup(line220)
	soup = soup.findAll("td")
	listNoRE = re.compile("^\d+[.]$")
	pFlag = 0
	busstopD = []
	for i in soup:
		try:
			if pFlag == 1:
				busstopD.append(i.contents[0].title())
				pFlag = 0
			elif listNoRE.search(i.contents[0]) is not None:
				pFlag = 1
			else:
				pFlag = 0
		except:
			pass
	return busstopD

def main():
	if len(argv) == 1:
		print "Usage: <program name> [options] <bus route>"
	else:
		print "\n".join(getpage(argv[1]))

if __name__ == "__main__":
	main()
