-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathciticodes.py
80 lines (76 loc) · 2.94 KB
/
citicodes.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
""" Small Script to find citi destinations codes for MEGABUS"""
from urllib.request import urlopen
from bs4 import BeautifulSoup
number = 89 # First city.
while True:
try:
url = 'http://us.megabus.com/JourneyResults.aspx?originCode={0}&destinationCode=143&outboundDepartureDate=4%2f16%2f2016&inboundDepartureDate=4%2f16%2f2016&passengerCount=2&transportType=0&concessionCount=0&nusCount=0&outboundWheelchairSeated=0&outboundOtherDisabilityCount=0&inboundWheelchairSeated=0&inboundOtherDisabilityCount=0&outboundPcaCount=0&inboundPcaCount=0&promotionCode=&withReturn=1'.format(number)
html = urlopen(url)
soup = BeautifulSoup(html)
places = []
for place in soup.findAll("strong"):# City name is in between a strong tag
places.append(place.getText())
print("'"+places[0].upper()+"'"+' : '+"'"+str(number)+"'"+',') # formats the city into a dictionary to be used later.
number += 1
except IndexError: #Some cities skip a digit or two, this code stops the indexerror from stopping the program.
number +=1
continue
else:
if number > 145: # This is the numerical code for the last city.
print('Done')
break
""""
Sample Output :
'ALBANY, NY' : '89',
'AMHERST, MA' : '90',
'ANN ARBOR, MI' : '91',
'ATLANTIC CITY, NJ' : '92',
'BINGHAMTON, NY' : '93',
'BOSTON, MA' : '94',
'BUFFALO, NY' : '95',
'BURLINGTON, VT' : '96',
'CAMDEN' : '97',
'CHAMPAIGN, IL' : '98',
'CHARLOTTE, NC' : '99',
'CHICAGO, IL' : '100',
'CHRISTIANSBURG, VA' : '101',
'CINCINNATI, OH' : '102',
'CLEVELAND, OH' : '103',
'COLUMBIA, MO' : '104',
'COLUMBUS, OH' : '105',
'DES MOINES, IA' : '106',
'DETROIT, MI' : '107',
'ERIE, PA' : '108',
'FREDERICK, MD' : '109',
'HAMPTON, VA' : '110',
'HARRISBURG, PA' : '111',
'HARTFORD, CT' : '112',
'HOLYOKE, CT' : '113',
'HYANNIS, MA' : '114',
'INDIANAPOLIS, IN' : '115',
'IOWA CITY, IA' : '116',
'KANSAS CITY, MO' : '117',
'KNOXVILLE, TN' : '118',
'MADISON, WI' : '119',
'MEMPHIS, TN' : '120',
'MILWAUKEE, WI' : '121',
'NEW HAVEN, CT' : '122',
'NEW YORK, NY' : '123',
'NIAGARA FALLS, ON' : '124',
'NORMAL, IL' : '125',
'OMAHA, NE' : '126',
'PHILADELPHIA, PA' : '127',
'PITTSBURGH, PA' : '128',
'PORTLAND, ME' : '129',
'PROVIDENCE, RI' : '130',
'DURHAM, NC' : '131',
'RICHMOND, VA' : '132',
'RIDGEWOOD, NJ' : '133',
'ROCHESTER, NY' : '134',
'SECAUCUS, NJ' : '135',
'ST LOUIS, MO' : '136',
'STATE COLLEGE, PA' : '137',
'STORRS, CT' : '138',
'SYRACUSE, NY' : '139',
'TOLEDO, OH' : '140',
""""