Lorem ipsum dolor sit amet, ...
88 |Nunc cursus, justo eget elementum dictum, ...
91 |├── .gitignore ├── README.md ├── bs_scraper.py ├── csv_scraper.py ├── data ├── .~lock.crunchbase.xlsx# ├── crunchbase.xlsx ├── schedule.csv └── simple.html ├── family_tree.py ├── json_scraper.py ├── requirements.txt ├── scrape_netflix.py ├── scraper.py ├── start_selenium.py ├── xlsx2csv.py ├── xlsx_scraper.py └── xpath_intro.py /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.pyc 3 | scrape_my_netflix.py 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | PyCon Introduction to Web and Data Scraping Tutorial 2 | =========================================== 3 | 4 | A tutorial-based introduction to web scraping with Python. 5 | 6 | Virtual Env 7 | ------------ 8 | 9 | If you'd like to use virtual environments, please follow the following instructions. It is not required for the tutorial but may be helpful. 10 | 11 | For more details on [virtual environments](http://www.doughellmann.com/projects/virtualenvwrapper/) 12 | 13 | If you don't have virtual env wrapper and/or pip: 14 | 15 | $ easy_install pip 16 | $ pip install virtualenvwrapper 17 | 18 | and read the additional instructions [here](http://virtualenvwrapper.readthedocs.org/en/latest/install.html) 19 | 20 | 21 | $ mkvirtualenv scraper_tutorial 22 | $ pip install -r requirements.txt 23 | 24 | 25 | LXML and Selenium 26 | ------------------------- 27 | You will need both [LXML](http://lxml.de/) and [Selenium](http://selenium-python.readthedocs.org/en/latest/index.html) to follow this tutorial in it's entirety. 28 | 29 | If you are using a Mac, I would highly recommend using [Homebrew](http://brew.sh/). It will help make pip install *very easy* for you to use. 30 | * [Homebrew and LXML Installation](http://geekforbrains.com/how-to-install-lxml-for-python-using-homebrew-and-pip-in-3-steps) 31 | * [More help on Installing LXML on Mac](http://lxml.de/installation.html#installation) 32 | * [And additional suggestions for LXML on Mac](http://stackoverflow.com/questions/1277124/how-do-you-install-lxml-on-os-x-leopard-without-using-macports-or-fink) 33 | 34 | If you are using Windows, it might be worth it to run this within a Linux Virtual Machine. If you are a Windows + Python guru, please follow these installation instructions. I can help as needed but I have not programmed on Windows in more than 5 years. 35 | * [Installing Selenium on Windows](http://selenium-python.readthedocs.org/en/latest/installation.html#detailed-instructions-for-windows-users) 36 | * [Installing LXML on Windows](http://lxml.de/installation.html#ms-windows) 37 | 38 | Please reach out to me if you have any questions on getting the initial requirements set up. Thanks! 39 | 40 | 41 | Firefox Web Browser 42 | --------------------- 43 | 44 | Firefox comes as the default web driver for Selenium. To use Selenium easily, please [download and install Firefox](http://www.mozilla.org/en-US/firefox/new/). 45 | 46 | Using PIP 47 | ------------ 48 | 49 | If you have never used PIP before you will need to sudo easy_install pip or brew install pip. PIP is a python package manager and it's really super so I highly advise using it! 50 | 51 | 52 | Questions? 53 | ---------- 54 | /msg kjam on freenode or @kjam on twitter 55 | 56 | -------------------------------------------------------------------------------- /bs_scraper.py: -------------------------------------------------------------------------------- 1 | import urllib2 2 | from email.MIMEText import MIMEText 3 | import smtplib 4 | from bs4 import BeautifulSoup 5 | 6 | GMAIL_LOGIN = 'pyladiestest@gmail.com' 7 | GMAIL_PASSWORD = 'YOU NO CAN HAZ' 8 | 9 | 10 | def send_email(subject, message, from_addr=GMAIL_LOGIN, to_addr=GMAIL_LOGIN): 11 | msg = MIMEText(message) 12 | msg['Subject'] = subject 13 | msg['From'] = from_addr 14 | msg['To'] = to_addr 15 | msg['Reply-To'] = 'happyhours@noreply.com' 16 | 17 | server = smtplib.SMTP('smtp.gmail.com', 587) # port 465 or 587 18 | server.ehlo() 19 | server.starttls() 20 | server.ehlo() 21 | server.login(GMAIL_LOGIN, GMAIL_PASSWORD) 22 | server.sendmail(from_addr, to_addr, msg.as_string()) 23 | server.close() 24 | 25 | 26 | def get_site_html(url): 27 | source = urllib2.urlopen(url).read() 28 | return source 29 | 30 | 31 | def get_tree(url): 32 | source = get_site_html(url) 33 | tree = BeautifulSoup(source) 34 | return tree 35 | 36 | 37 | if __name__ == '__main__': 38 | 39 | stuff_i_like = ['burger', 'wine', 'sushi', 'sweet potato fries', 'BBQ'] 40 | found_happy_hours = [] 41 | my_happy_hours = [] 42 | 43 | # First, I'm going to identify the areas of the page I want to look at 44 | tables = get_tree( 45 | 'http://www.downtownla.com/3_10_happyHours.asp?action=ALL') 46 | 47 | # Then, I'm going to sort out the *exact* parts of the page 48 | # that match what I'm looking for... 49 | for t in tables.findAll('p', {'class': 'calendar_EventTitle'}): 50 | text = t.text 51 | for s in t.findNextSiblings(): 52 | text += '\n' + s.text 53 | found_happy_hours.append(text) 54 | 55 | print "The scraper found %d happy hours!" % len(found_happy_hours) 56 | 57 | # Now I'm going to loop through the food I like 58 | # and see if any of the happy hour descriptions match 59 | for food in stuff_i_like: 60 | for hh in found_happy_hours: 61 | # checking for text AND making sure I don't have duplicates 62 | if food in hh and hh not in my_happy_hours: 63 | print "YAY! I found some %s!" % food 64 | my_happy_hours.append(hh) 65 | 66 | print "I think you might like %d of them, yipeeeee!" % len(my_happy_hours) 67 | 68 | # Now, let's make a mail message we can read: 69 | message = 'Hey Katharine,\n\n\n' 70 | message += 'OMG, I found some stuff for you in Downtown, take a look.\n\n' 71 | message += '==============================\n'.join(my_happy_hours) 72 | message = message.encode('utf-8') 73 | # To read more about encoding: 74 | # http://diveintopython.org/xml_processing/unicode.html 75 | message = message.replace('\t', '').replace('\r', '') 76 | message += '\n\nXOXO,\n Your Py Script' 77 | 78 | # And email it to ourselves! 79 | email = 'katharine@pyladies.com' 80 | send_email('Happy Hour Update', message, from_addr=GMAIL_LOGIN, 81 | to_addr=email) 82 | -------------------------------------------------------------------------------- /csv_scraper.py: -------------------------------------------------------------------------------- 1 | from csv import DictReader 2 | from datetime import datetime 3 | 4 | with open('data/schedule.csv') as document: 5 | reader = DictReader(document) 6 | for row in reader: 7 | day = datetime.strptime(row.get('START_DATE'), '%m/%d/%y') 8 | if 'PNC' in row.get('LOCATION') and day.weekday() > 4: 9 | print 'HOME WEEKEND GAME!! %s on %s' % ( 10 | row.get('SUBJECT'), row.get('START_DATE')) 11 | -------------------------------------------------------------------------------- /data/.~lock.crunchbase.xlsx#: -------------------------------------------------------------------------------- 1 | katharine ,katharine,kjamistan,03.04.2014 11:59,file:///home/katharine/.config/libreoffice/4; -------------------------------------------------------------------------------- /data/crunchbase.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kjam/python-web-scraping-tutorial/65df43d244724bc49db64b12535ea2be46b3262b/data/crunchbase.xlsx -------------------------------------------------------------------------------- /data/schedule.csv: -------------------------------------------------------------------------------- 1 | START_DATE,START_TIME,START_TIME_ET,SUBJECT,LOCATION,DESCRIPTION,END_DATE,END_DATE_ET,END_TIME,END_TIME_ET,REMINDER_OFF,REMINDER_ON,REMINDER_DATE,REMINDER_TIME,REMINDER_TIME_ET,SHOWTIMEAS_FREE,SHOWTIMEAS_BUSY 2 | 02/26/14,01:05 PM,01:05 PM,Yankees at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",02/26/14,02/26/14,04:05 PM,04:05 PM,FALSE,TRUE,02/26/14,12:05 PM,12:05 PM,FREE,BUSY 3 | 02/27/14,01:05 PM,01:05 PM,Pirates at Yankees,George M. Steinbrenner Field,"Local TV: MLBN (delay) ----- Local Radio: MLB.com",02/27/14,02/27/14,04:05 PM,04:05 PM,FALSE,TRUE,02/27/14,12:05 PM,12:05 PM,FREE,BUSY 4 | 02/28/14,01:05 PM,01:05 PM,Pirates at Blue Jays,Florida Auto Exchange Stadium,"Local Radio: MLB.com",02/28/14,02/28/14,04:05 PM,04:05 PM,FALSE,TRUE,02/28/14,12:05 PM,12:05 PM,FREE,BUSY 5 | 03/01/14,01:05 PM,01:05 PM,Rays at Pirates,McKechnie Field,"Local Radio: MLB.com",03/01/14,03/01/14,04:05 PM,04:05 PM,FALSE,TRUE,03/01/14,12:05 PM,12:05 PM,FREE,BUSY 6 | 03/02/14,01:05 PM,01:05 PM,Pirates at Phillies,Bright House Field,"Local Radio: KDKA-FM 93.7",03/02/14,03/02/14,04:05 PM,04:05 PM,FALSE,TRUE,03/02/14,12:05 PM,12:05 PM,FREE,BUSY 7 | 03/03/14,01:05 PM,01:05 PM,Red Sox at Pirates,McKechnie Field,"Local Radio: MLB.com",03/03/14,03/03/14,04:05 PM,04:05 PM,FALSE,TRUE,03/03/14,12:05 PM,12:05 PM,FREE,BUSY 8 | 03/04/14,01:05 PM,01:05 PM,Pirates at Tigers,Joker Marchant Stadium,"Local Radio: KDKA-FM 93.7",03/04/14,03/04/14,04:05 PM,04:05 PM,FALSE,TRUE,03/04/14,12:05 PM,12:05 PM,FREE,BUSY 9 | 03/05/14,01:05 PM,01:05 PM,Pirates at Blue Jays,Florida Auto Exchange Stadium,"Local Radio: KDKA-FM 93.7",03/05/14,03/05/14,04:05 PM,04:05 PM,FALSE,TRUE,03/05/14,12:05 PM,12:05 PM,FREE,BUSY 10 | 03/06/14,01:05 PM,01:05 PM,Blue Jays at Pirates,McKechnie Field,"Local Radio: MLB.com",03/06/14,03/06/14,04:05 PM,04:05 PM,FALSE,TRUE,03/06/14,12:05 PM,12:05 PM,FREE,BUSY 11 | 03/07/14,01:05 PM,01:05 PM,Twins at Pirates,McKechnie Field,"Local Radio: MLB.com",03/07/14,03/07/14,04:05 PM,04:05 PM,FALSE,TRUE,03/07/14,12:05 PM,12:05 PM,FREE,BUSY 12 | 03/08/14,01:05 PM,01:05 PM,Pirates at Rays,Charlotte Sports Park,"Local Radio: MLB.com",03/08/14,03/08/14,04:05 PM,04:05 PM,FALSE,TRUE,03/08/14,12:05 PM,12:05 PM,FREE,BUSY 13 | 03/09/14,01:05 PM,01:05 PM,Pirates at Orioles,Ed Smith Stadium,"Local Radio: KDKA-FM 93.7",03/09/14,03/09/14,04:05 PM,04:05 PM,FALSE,TRUE,03/09/14,12:05 PM,12:05 PM,FREE,BUSY 14 | 03/09/14,01:05 PM,01:05 PM,Red Sox at Pirates,McKechnie Field,"Local TV: ROOT SPORTS",03/09/14,03/09/14,04:05 PM,04:05 PM,FALSE,TRUE,03/09/14,12:05 PM,12:05 PM,FREE,BUSY 15 | 03/10/14,01:05 PM,01:05 PM,Orioles at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",03/10/14,03/10/14,04:05 PM,04:05 PM,FALSE,TRUE,03/10/14,12:05 PM,12:05 PM,FREE,BUSY 16 | 03/12/14,01:05 PM,01:05 PM,Pirates at Twins,Hammond Stadium,"Local Radio: MLB.com",03/12/14,03/12/14,04:05 PM,04:05 PM,FALSE,TRUE,03/12/14,12:05 PM,12:05 PM,FREE,BUSY 17 | 03/13/14,01:05 PM,01:05 PM,Pirates at Rays,Charlotte Sports Park,"Local Radio: MLB.com",03/13/14,03/13/14,04:05 PM,04:05 PM,FALSE,TRUE,03/13/14,12:05 PM,12:05 PM,FREE,BUSY 18 | 03/14/14,01:05 PM,01:05 PM,Phillies at Pirates,McKechnie Field,"Local Radio: MLB.com",03/14/14,03/14/14,04:05 PM,04:05 PM,FALSE,TRUE,03/14/14,12:05 PM,12:05 PM,FREE,BUSY 19 | 03/15/14,01:05 PM,01:05 PM,Rays at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",03/15/14,03/15/14,04:05 PM,04:05 PM,FALSE,TRUE,03/15/14,12:05 PM,12:05 PM,FREE,BUSY 20 | 03/16/14,01:05 PM,01:05 PM,Pirates at Phillies,Bright House Field,"Local TV: MLBN ----- Local Radio: KDKA-FM 93.7",03/16/14,03/16/14,04:05 PM,04:05 PM,FALSE,TRUE,03/16/14,12:05 PM,12:05 PM,FREE,BUSY 21 | 03/17/14,01:05 PM,01:05 PM,Yankees at Pirates,McKechnie Field,"Local TV: MLBN (delay) -- ROOT SPORTS",03/17/14,03/17/14,04:05 PM,04:05 PM,FALSE,TRUE,03/17/14,12:05 PM,12:05 PM,FREE,BUSY 22 | 03/19/14,07:05 PM,07:05 PM,Pirates at Red Sox,JetBlue Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",03/19/14,03/19/14,10:05 PM,10:05 PM,FALSE,TRUE,03/19/14,06:05 PM,06:05 PM,FREE,BUSY 23 | 03/20/14,07:05 PM,07:05 PM,Orioles at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",03/20/14,03/20/14,10:05 PM,10:05 PM,FALSE,TRUE,03/20/14,06:05 PM,06:05 PM,FREE,BUSY 24 | 03/21/14,07:05 PM,07:05 PM,Pirates at Yankees,George M. Steinbrenner Field,"Local TV: MLBN -- ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",03/21/14,03/21/14,10:05 PM,10:05 PM,FALSE,TRUE,03/21/14,06:05 PM,06:05 PM,FREE,BUSY 25 | 03/22/14,01:05 PM,01:05 PM,Phillies at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",03/22/14,03/22/14,04:05 PM,04:05 PM,FALSE,TRUE,03/22/14,12:05 PM,12:05 PM,FREE,BUSY 26 | 03/23/14,01:05 PM,01:05 PM,Pirates at Orioles,Ed Smith Stadium,"Local Radio: KDKA-FM 93.7",03/23/14,03/23/14,04:05 PM,04:05 PM,FALSE,TRUE,03/23/14,12:05 PM,12:05 PM,FREE,BUSY 27 | 03/24/14,01:05 PM,01:05 PM,Tigers at Pirates,McKechnie Field,"Local TV: ESPN ----- Local Radio: MLB.com",03/24/14,03/24/14,04:05 PM,04:05 PM,FALSE,TRUE,03/24/14,12:05 PM,12:05 PM,FREE,BUSY 28 | 03/25/14,01:05 PM,01:05 PM,Blue Jays at Pirates,McKechnie Field,"Local Radio: KDKA-FM 93.7",03/25/14,03/25/14,04:05 PM,04:05 PM,FALSE,TRUE,03/25/14,12:05 PM,12:05 PM,FREE,BUSY 29 | 03/26/14,01:05 PM,01:05 PM,Pirates at Twins,Hammond Stadium,"Local Radio: MLB.com",03/26/14,03/26/14,04:05 PM,04:05 PM,FALSE,TRUE,03/26/14,12:05 PM,12:05 PM,FREE,BUSY 30 | 03/27/14,01:05 PM,01:05 PM,Yankees at Pirates,McKechnie Field,"Local TV: MLBN (delay) ----- Local Radio: MLB.com",03/27/14,03/27/14,04:05 PM,04:05 PM,FALSE,TRUE,03/27/14,12:05 PM,12:05 PM,FREE,BUSY 31 | 03/28/14,07:05 PM,07:05 PM,Pirates at Phillies,Citizens Bank Park,"Local Radio: KDKA-FM 93.7",03/28/14,03/28/14,10:05 PM,10:05 PM,FALSE,TRUE,03/28/14,06:05 PM,06:05 PM,FREE,BUSY 32 | 03/29/14,01:05 PM,01:05 PM,Pirates at Phillies,Citizens Bank Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",03/29/14,03/29/14,04:05 PM,04:05 PM,FALSE,TRUE,03/29/14,12:05 PM,12:05 PM,FREE,BUSY 33 | 03/31/14,01:05 PM,01:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS -- ESPN ----- Local Radio: KDKA-FM 93.7",03/31/14,03/31/14,04:05 PM,04:05 PM,FALSE,TRUE,03/31/14,12:05 PM,12:05 PM,FREE,BUSY 34 | 04/02/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/02/14,04/02/14,10:05 PM,10:05 PM,FALSE,TRUE,04/02/14,06:05 PM,06:05 PM,FREE,BUSY 35 | 04/03/14,12:35 PM,12:35 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/03/14,04/03/14,03:35 PM,03:35 PM,FALSE,TRUE,04/03/14,11:35 AM,11:35 AM,FREE,BUSY 36 | 04/04/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: MLBN -- ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/04/14,04/04/14,10:05 PM,10:05 PM,FALSE,TRUE,04/04/14,06:05 PM,06:05 PM,FREE,BUSY 37 | 04/05/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: MLBN ----- Local Radio: KDKA-FM 93.7",04/05/14,04/05/14,10:05 PM,10:05 PM,FALSE,TRUE,04/05/14,06:05 PM,06:05 PM,FREE,BUSY 38 | 04/06/14,01:35 PM,01:35 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/06/14,04/06/14,04:35 PM,04:35 PM,FALSE,TRUE,04/06/14,12:35 PM,12:35 PM,FREE,BUSY 39 | 04/08/14,08:05 PM,08:05 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/08/14,04/08/14,11:05 PM,11:05 PM,FALSE,TRUE,04/08/14,07:05 PM,07:05 PM,FREE,BUSY 40 | 04/09/14,08:05 PM,08:05 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/09/14,04/09/14,11:05 PM,11:05 PM,FALSE,TRUE,04/09/14,07:05 PM,07:05 PM,FREE,BUSY 41 | 04/10/14,02:20 PM,02:20 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/10/14,04/10/14,05:20 PM,05:20 PM,FALSE,TRUE,04/10/14,01:20 PM,01:20 PM,FREE,BUSY 42 | 04/11/14,08:10 PM,08:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/11/14,04/11/14,11:10 PM,11:10 PM,FALSE,TRUE,04/11/14,07:10 PM,07:10 PM,FREE,BUSY 43 | 04/12/14,07:10 PM,07:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/12/14,04/12/14,10:10 PM,10:10 PM,FALSE,TRUE,04/12/14,06:10 PM,06:10 PM,FREE,BUSY 44 | 04/13/14,02:10 PM,02:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/13/14,04/13/14,05:10 PM,05:10 PM,FALSE,TRUE,04/13/14,01:10 PM,01:10 PM,FREE,BUSY 45 | 04/14/14,07:10 PM,07:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/14/14,04/14/14,10:10 PM,10:10 PM,FALSE,TRUE,04/14/14,06:10 PM,06:10 PM,FREE,BUSY 46 | 04/15/14,07:10 PM,07:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/15/14,04/15/14,10:10 PM,10:10 PM,FALSE,TRUE,04/15/14,06:10 PM,06:10 PM,FREE,BUSY 47 | 04/16/14,12:35 PM,12:35 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/16/14,04/16/14,03:35 PM,03:35 PM,FALSE,TRUE,04/16/14,11:35 AM,11:35 AM,FREE,BUSY 48 | 04/17/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: MLBN -- ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/17/14,04/17/14,10:05 PM,10:05 PM,FALSE,TRUE,04/17/14,06:05 PM,06:05 PM,FREE,BUSY 49 | 04/18/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/18/14,04/18/14,10:05 PM,10:05 PM,FALSE,TRUE,04/18/14,06:05 PM,06:05 PM,FREE,BUSY 50 | 04/19/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/19/14,04/19/14,10:05 PM,10:05 PM,FALSE,TRUE,04/19/14,06:05 PM,06:05 PM,FREE,BUSY 51 | 04/20/14,01:35 PM,01:35 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/20/14,04/20/14,04:35 PM,04:35 PM,FALSE,TRUE,04/20/14,12:35 PM,12:35 PM,FREE,BUSY 52 | 04/21/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local Radio: KDKA-FM 93.7",04/21/14,04/21/14,10:05 PM,10:05 PM,FALSE,TRUE,04/21/14,06:05 PM,06:05 PM,FREE,BUSY 53 | 04/22/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/22/14,04/22/14,10:05 PM,10:05 PM,FALSE,TRUE,04/22/14,06:05 PM,06:05 PM,FREE,BUSY 54 | 04/23/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/23/14,04/23/14,10:05 PM,10:05 PM,FALSE,TRUE,04/23/14,06:05 PM,06:05 PM,FREE,BUSY 55 | 04/24/14,12:35 PM,12:35 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/24/14,04/24/14,03:35 PM,03:35 PM,FALSE,TRUE,04/24/14,11:35 AM,11:35 AM,FREE,BUSY 56 | 04/25/14,08:15 PM,08:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS -- MLBN ----- Local Radio: KDKA-FM 93.7",04/25/14,04/25/14,11:15 PM,11:15 PM,FALSE,TRUE,04/25/14,07:15 PM,07:15 PM,FREE,BUSY 57 | 04/26/14,04:05 PM,04:05 PM,Pirates at Cardinals,Busch Stadium,"Local TV: FS1 -- ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/26/14,04/26/14,07:05 PM,07:05 PM,FALSE,TRUE,04/26/14,03:05 PM,03:05 PM,FREE,BUSY 58 | 04/27/14,02:15 PM,02:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/27/14,04/27/14,05:15 PM,05:15 PM,FALSE,TRUE,04/27/14,01:15 PM,01:15 PM,FREE,BUSY 59 | 04/29/14,07:05 PM,07:05 PM,Pirates at Orioles,Oriole Park at Camden Yards,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/29/14,04/29/14,10:05 PM,10:05 PM,FALSE,TRUE,04/29/14,06:05 PM,06:05 PM,FREE,BUSY 60 | 04/30/14,07:05 PM,07:05 PM,Pirates at Orioles,Oriole Park at Camden Yards,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",04/30/14,04/30/14,10:05 PM,10:05 PM,FALSE,TRUE,04/30/14,06:05 PM,06:05 PM,FREE,BUSY 61 | 05/02/14,07:05 PM,07:05 PM,Blue Jays at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/02/14,05/02/14,10:05 PM,10:05 PM,FALSE,TRUE,05/02/14,06:05 PM,06:05 PM,FREE,BUSY 62 | 05/03/14,07:05 PM,07:05 PM,Blue Jays at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/03/14,05/03/14,10:05 PM,10:05 PM,FALSE,TRUE,05/03/14,06:05 PM,06:05 PM,FREE,BUSY 63 | 05/04/14,01:35 PM,01:35 PM,Blue Jays at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/04/14,05/04/14,04:35 PM,04:35 PM,FALSE,TRUE,05/04/14,12:35 PM,12:35 PM,FREE,BUSY 64 | 05/05/14,07:05 PM,07:05 PM,Giants at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/05/14,05/05/14,10:05 PM,10:05 PM,FALSE,TRUE,05/05/14,06:05 PM,06:05 PM,FREE,BUSY 65 | 05/06/14,07:05 PM,07:05 PM,Giants at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/06/14,05/06/14,10:05 PM,10:05 PM,FALSE,TRUE,05/06/14,06:05 PM,06:05 PM,FREE,BUSY 66 | 05/07/14,12:35 PM,12:35 PM,Giants at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/07/14,05/07/14,03:35 PM,03:35 PM,FALSE,TRUE,05/07/14,11:35 AM,11:35 AM,FREE,BUSY 67 | 05/09/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/09/14,05/09/14,10:05 PM,10:05 PM,FALSE,TRUE,05/09/14,06:05 PM,06:05 PM,FREE,BUSY 68 | 05/10/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/10/14,05/10/14,10:05 PM,10:05 PM,FALSE,TRUE,05/10/14,06:05 PM,06:05 PM,FREE,BUSY 69 | 05/11/14,08:05 PM,08:05 PM,Cardinals at Pirates,PNC Park,"Local TV: ESPN ----- Local Radio: KDKA-FM 93.7",05/11/14,05/11/14,11:05 PM,11:05 PM,FALSE,TRUE,05/11/14,07:05 PM,07:05 PM,FREE,BUSY 70 | 05/13/14,08:10 PM,08:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/13/14,05/13/14,11:10 PM,11:10 PM,FALSE,TRUE,05/13/14,07:10 PM,07:10 PM,FREE,BUSY 71 | 05/14/14,08:10 PM,08:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/14/14,05/14/14,11:10 PM,11:10 PM,FALSE,TRUE,05/14/14,07:10 PM,07:10 PM,FREE,BUSY 72 | 05/15/14,01:10 PM,01:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/15/14,05/15/14,04:10 PM,04:10 PM,FALSE,TRUE,05/15/14,12:10 PM,12:10 PM,FREE,BUSY 73 | 05/16/14,07:05 PM,07:05 PM,Pirates at Yankees,Yankee Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/16/14,05/16/14,10:05 PM,10:05 PM,FALSE,TRUE,05/16/14,06:05 PM,06:05 PM,FREE,BUSY 74 | 05/17/14,04:05 PM,04:05 PM,Pirates at Yankees,Yankee Stadium,"Local TV: FS1 -- ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/17/14,05/17/14,07:05 PM,07:05 PM,FALSE,TRUE,05/17/14,03:05 PM,03:05 PM,FREE,BUSY 75 | 05/18/14,01:05 PM,01:05 PM,Pirates at Yankees,Yankee Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/18/14,05/18/14,04:05 PM,04:05 PM,FALSE,TRUE,05/18/14,12:05 PM,12:05 PM,FREE,BUSY 76 | 05/20/14,07:05 PM,07:05 PM,Orioles at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/20/14,05/20/14,10:05 PM,10:05 PM,FALSE,TRUE,05/20/14,06:05 PM,06:05 PM,FREE,BUSY 77 | 05/21/14,07:05 PM,07:05 PM,Orioles at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/21/14,05/21/14,10:05 PM,10:05 PM,FALSE,TRUE,05/21/14,06:05 PM,06:05 PM,FREE,BUSY 78 | 05/22/14,07:05 PM,07:05 PM,Nationals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/22/14,05/22/14,10:05 PM,10:05 PM,FALSE,TRUE,05/22/14,06:05 PM,06:05 PM,FREE,BUSY 79 | 05/23/14,07:05 PM,07:05 PM,Nationals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/23/14,05/23/14,10:05 PM,10:05 PM,FALSE,TRUE,05/23/14,06:05 PM,06:05 PM,FREE,BUSY 80 | 05/24/14,07:15 PM,07:15 PM,Nationals at Pirates,PNC Park,"Local TV: FOX ----- Local Radio: KDKA-FM 93.7",05/24/14,05/24/14,10:15 PM,10:15 PM,FALSE,TRUE,05/24/14,06:15 PM,06:15 PM,FREE,BUSY 81 | 05/25/14,01:35 PM,01:35 PM,Nationals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/25/14,05/25/14,04:35 PM,04:35 PM,FALSE,TRUE,05/25/14,12:35 PM,12:35 PM,FREE,BUSY 82 | 05/26/14,01:10 PM,01:10 PM,Pirates at Mets,Citi Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/26/14,05/26/14,04:10 PM,04:10 PM,FALSE,TRUE,05/26/14,12:10 PM,12:10 PM,FREE,BUSY 83 | 05/27/14,07:10 PM,07:10 PM,Pirates at Mets,Citi Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/27/14,05/27/14,10:10 PM,10:10 PM,FALSE,TRUE,05/27/14,06:10 PM,06:10 PM,FREE,BUSY 84 | 05/28/14,01:10 PM,01:10 PM,Pirates at Mets,Citi Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/28/14,05/28/14,04:10 PM,04:10 PM,FALSE,TRUE,05/28/14,12:10 PM,12:10 PM,FREE,BUSY 85 | 05/29/14,10:10 PM,10:10 PM,Pirates at Dodgers,Dodger Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/30/14,05/30/14,01:10 AM,01:10 AM,FALSE,TRUE,05/29/14,09:10 PM,09:10 PM,FREE,BUSY 86 | 05/30/14,10:10 PM,10:10 PM,Pirates at Dodgers,Dodger Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",05/31/14,05/31/14,01:10 AM,01:10 AM,FALSE,TRUE,05/30/14,09:10 PM,09:10 PM,FREE,BUSY 87 | 05/31/14,07:15 PM,07:15 PM,Pirates at Dodgers,Dodger Stadium,"Local TV: FOX ----- Local Radio: KDKA-FM 93.7",05/31/14,05/31/14,10:15 PM,10:15 PM,FALSE,TRUE,05/31/14,06:15 PM,06:15 PM,FREE,BUSY 88 | 06/01/14,03:33 AM,03:33 AM,Pirates at Dodgers,Dodger Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/01/14,06/01/14,06:33 AM,06:33 AM,FALSE,TRUE,06/01/14,02:33 AM,02:33 AM,FREE,BUSY 89 | 06/02/14,10:10 PM,10:10 PM,Pirates at Padres,Petco Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/03/14,06/03/14,01:10 AM,01:10 AM,FALSE,TRUE,06/02/14,09:10 PM,09:10 PM,FREE,BUSY 90 | 06/03/14,10:10 PM,10:10 PM,Pirates at Padres,Petco Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/04/14,06/04/14,01:10 AM,01:10 AM,FALSE,TRUE,06/03/14,09:10 PM,09:10 PM,FREE,BUSY 91 | 06/04/14,06:40 PM,06:40 PM,Pirates at Padres,Petco Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/04/14,06/04/14,09:40 PM,09:40 PM,FALSE,TRUE,06/04/14,05:40 PM,05:40 PM,FREE,BUSY 92 | 06/06/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/06/14,06/06/14,10:05 PM,10:05 PM,FALSE,TRUE,06/06/14,06:05 PM,06:05 PM,FREE,BUSY 93 | 06/07/14,04:05 PM,04:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/07/14,06/07/14,07:05 PM,07:05 PM,FALSE,TRUE,06/07/14,03:05 PM,03:05 PM,FREE,BUSY 94 | 06/08/14,01:35 PM,01:35 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/08/14,06/08/14,04:35 PM,04:35 PM,FALSE,TRUE,06/08/14,12:35 PM,12:35 PM,FREE,BUSY 95 | 06/09/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/09/14,06/09/14,10:05 PM,10:05 PM,FALSE,TRUE,06/09/14,06:05 PM,06:05 PM,FREE,BUSY 96 | 06/10/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/10/14,06/10/14,10:05 PM,10:05 PM,FALSE,TRUE,06/10/14,06:05 PM,06:05 PM,FREE,BUSY 97 | 06/11/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/11/14,06/11/14,10:05 PM,10:05 PM,FALSE,TRUE,06/11/14,06:05 PM,06:05 PM,FREE,BUSY 98 | 06/12/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/12/14,06/12/14,10:05 PM,10:05 PM,FALSE,TRUE,06/12/14,06:05 PM,06:05 PM,FREE,BUSY 99 | 06/13/14,07:10 PM,07:10 PM,Pirates at Marlins,Marlins Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/13/14,06/13/14,10:10 PM,10:10 PM,FALSE,TRUE,06/13/14,06:10 PM,06:10 PM,FREE,BUSY 100 | 06/14/14,04:10 PM,04:10 PM,Pirates at Marlins,Marlins Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/14/14,06/14/14,07:10 PM,07:10 PM,FALSE,TRUE,06/14/14,03:10 PM,03:10 PM,FREE,BUSY 101 | 06/15/14,01:10 PM,01:10 PM,Pirates at Marlins,Marlins Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/15/14,06/15/14,04:10 PM,04:10 PM,FALSE,TRUE,06/15/14,12:10 PM,12:10 PM,FREE,BUSY 102 | 06/17/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/17/14,06/17/14,10:05 PM,10:05 PM,FALSE,TRUE,06/17/14,06:05 PM,06:05 PM,FREE,BUSY 103 | 06/18/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/18/14,06/18/14,10:05 PM,10:05 PM,FALSE,TRUE,06/18/14,06:05 PM,06:05 PM,FREE,BUSY 104 | 06/19/14,12:35 PM,12:35 PM,Reds at Pirates,PNC Park,"Local Radio: KDKA-FM 93.7",06/19/14,06/19/14,03:35 PM,03:35 PM,FALSE,TRUE,06/19/14,11:35 AM,11:35 AM,FREE,BUSY 105 | 06/20/14,04:05 PM,04:05 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/20/14,06/20/14,07:05 PM,07:05 PM,FALSE,TRUE,06/20/14,03:05 PM,03:05 PM,FREE,BUSY 106 | 06/21/14,07:15 PM,07:15 PM,Pirates at Cubs,Wrigley Field,"Local TV: FOX ----- Local Radio: KDKA-FM 93.7",06/21/14,06/21/14,10:15 PM,10:15 PM,FALSE,TRUE,06/21/14,06:15 PM,06:15 PM,FREE,BUSY 107 | 06/22/14,02:20 PM,02:20 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/22/14,06/22/14,05:20 PM,05:20 PM,FALSE,TRUE,06/22/14,01:20 PM,01:20 PM,FREE,BUSY 108 | 06/23/14,07:10 PM,07:10 PM,Pirates at Rays,Tropicana Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/23/14,06/23/14,10:10 PM,10:10 PM,FALSE,TRUE,06/23/14,06:10 PM,06:10 PM,FREE,BUSY 109 | 06/24/14,07:10 PM,07:10 PM,Pirates at Rays,Tropicana Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/24/14,06/24/14,10:10 PM,10:10 PM,FALSE,TRUE,06/24/14,06:10 PM,06:10 PM,FREE,BUSY 110 | 06/25/14,12:10 PM,12:10 PM,Pirates at Rays,Tropicana Field,"Local Radio: KDKA-FM 93.7",06/25/14,06/25/14,03:10 PM,03:10 PM,FALSE,TRUE,06/25/14,11:10 AM,11:10 AM,FREE,BUSY 111 | 06/26/14,07:05 PM,07:05 PM,Mets at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/26/14,06/26/14,10:05 PM,10:05 PM,FALSE,TRUE,06/26/14,06:05 PM,06:05 PM,FREE,BUSY 112 | 06/27/14,07:05 PM,07:05 PM,Mets at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/27/14,06/27/14,10:05 PM,10:05 PM,FALSE,TRUE,06/27/14,06:05 PM,06:05 PM,FREE,BUSY 113 | 06/28/14,04:05 PM,04:05 PM,Mets at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/28/14,06/28/14,07:05 PM,07:05 PM,FALSE,TRUE,06/28/14,03:05 PM,03:05 PM,FREE,BUSY 114 | 06/29/14,01:35 PM,01:35 PM,Mets at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",06/29/14,06/29/14,04:35 PM,04:35 PM,FALSE,TRUE,06/29/14,12:35 PM,12:35 PM,FREE,BUSY 115 | 07/01/14,07:05 PM,07:05 PM,D-backs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/01/14,07/01/14,10:05 PM,10:05 PM,FALSE,TRUE,07/01/14,06:05 PM,06:05 PM,FREE,BUSY 116 | 07/02/14,07:05 PM,07:05 PM,D-backs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/02/14,07/02/14,10:05 PM,10:05 PM,FALSE,TRUE,07/02/14,06:05 PM,06:05 PM,FREE,BUSY 117 | 07/03/14,07:05 PM,07:05 PM,D-backs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/03/14,07/03/14,10:05 PM,10:05 PM,FALSE,TRUE,07/03/14,06:05 PM,06:05 PM,FREE,BUSY 118 | 07/04/14,05:05 PM,05:05 PM,Phillies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/04/14,07/04/14,08:05 PM,08:05 PM,FALSE,TRUE,07/04/14,04:05 PM,04:05 PM,FREE,BUSY 119 | 07/05/14,04:05 PM,04:05 PM,Phillies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/05/14,07/05/14,07:05 PM,07:05 PM,FALSE,TRUE,07/05/14,03:05 PM,03:05 PM,FREE,BUSY 120 | 07/06/14,01:35 PM,01:35 PM,Phillies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/06/14,07/06/14,04:35 PM,04:35 PM,FALSE,TRUE,07/06/14,12:35 PM,12:35 PM,FREE,BUSY 121 | 07/07/14,08:15 PM,08:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/07/14,07/07/14,11:15 PM,11:15 PM,FALSE,TRUE,07/07/14,07:15 PM,07:15 PM,FREE,BUSY 122 | 07/08/14,08:15 PM,08:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/08/14,07/08/14,11:15 PM,11:15 PM,FALSE,TRUE,07/08/14,07:15 PM,07:15 PM,FREE,BUSY 123 | 07/09/14,08:15 PM,08:15 PM,Pirates at Cardinals,Busch Stadium,"Local Radio: KDKA-FM 93.7",07/09/14,07/09/14,11:15 PM,11:15 PM,FALSE,TRUE,07/09/14,07:15 PM,07:15 PM,FREE,BUSY 124 | 07/10/14,07:15 PM,07:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/10/14,07/10/14,10:15 PM,10:15 PM,FALSE,TRUE,07/10/14,06:15 PM,06:15 PM,FREE,BUSY 125 | 07/11/14,07:10 PM,07:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/11/14,07/11/14,10:10 PM,10:10 PM,FALSE,TRUE,07/11/14,06:10 PM,06:10 PM,FREE,BUSY 126 | 07/12/14,07:15 PM,07:15 PM,Pirates at Reds,Great American Ball Park,"Local TV: FOX ----- Local Radio: KDKA-FM 93.7",07/12/14,07/12/14,10:15 PM,10:15 PM,FALSE,TRUE,07/12/14,06:15 PM,06:15 PM,FREE,BUSY 127 | 07/13/14,01:10 PM,01:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/13/14,07/13/14,04:10 PM,04:10 PM,FALSE,TRUE,07/13/14,12:10 PM,12:10 PM,FREE,BUSY 128 | 07/15/14,03:33 AM,03:33 AM,NL All-Stars at AL All-Stars,Target Field,,07/15/14,07/15/14,06:33 AM,06:33 AM,FALSE,TRUE,07/15/14,02:33 AM,02:33 AM,FREE,BUSY 129 | 07/18/14,07:05 PM,07:05 PM,Rockies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/18/14,07/18/14,10:05 PM,10:05 PM,FALSE,TRUE,07/18/14,06:05 PM,06:05 PM,FREE,BUSY 130 | 07/19/14,07:05 PM,07:05 PM,Rockies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/19/14,07/19/14,10:05 PM,10:05 PM,FALSE,TRUE,07/19/14,06:05 PM,06:05 PM,FREE,BUSY 131 | 07/20/14,01:35 PM,01:35 PM,Rockies at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/20/14,07/20/14,04:35 PM,04:35 PM,FALSE,TRUE,07/20/14,12:35 PM,12:35 PM,FREE,BUSY 132 | 07/21/14,07:05 PM,07:05 PM,Dodgers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/21/14,07/21/14,10:05 PM,10:05 PM,FALSE,TRUE,07/21/14,06:05 PM,06:05 PM,FREE,BUSY 133 | 07/22/14,07:05 PM,07:05 PM,Dodgers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/22/14,07/22/14,10:05 PM,10:05 PM,FALSE,TRUE,07/22/14,06:05 PM,06:05 PM,FREE,BUSY 134 | 07/23/14,07:05 PM,07:05 PM,Dodgers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/23/14,07/23/14,10:05 PM,10:05 PM,FALSE,TRUE,07/23/14,06:05 PM,06:05 PM,FREE,BUSY 135 | 07/25/14,08:40 PM,08:40 PM,Pirates at Rockies,Coors Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/25/14,07/25/14,11:40 PM,11:40 PM,FALSE,TRUE,07/25/14,07:40 PM,07:40 PM,FREE,BUSY 136 | 07/26/14,08:10 PM,08:10 PM,Pirates at Rockies,Coors Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/26/14,07/26/14,11:10 PM,11:10 PM,FALSE,TRUE,07/26/14,07:10 PM,07:10 PM,FREE,BUSY 137 | 07/27/14,04:10 PM,04:10 PM,Pirates at Rockies,Coors Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/27/14,07/27/14,07:10 PM,07:10 PM,FALSE,TRUE,07/27/14,03:10 PM,03:10 PM,FREE,BUSY 138 | 07/28/14,10:15 PM,10:15 PM,Pirates at Giants,AT&T Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/29/14,07/29/14,01:15 AM,01:15 AM,FALSE,TRUE,07/28/14,09:15 PM,09:15 PM,FREE,BUSY 139 | 07/29/14,10:15 PM,10:15 PM,Pirates at Giants,AT&T Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",07/30/14,07/30/14,01:15 AM,01:15 AM,FALSE,TRUE,07/29/14,09:15 PM,09:15 PM,FREE,BUSY 140 | 07/30/14,03:45 PM,03:45 PM,Pirates at Giants,AT&T Park,"Local Radio: KDKA-FM 93.7",07/30/14,07/30/14,06:45 PM,06:45 PM,FALSE,TRUE,07/30/14,02:45 PM,02:45 PM,FREE,BUSY 141 | 07/31/14,09:40 PM,09:40 PM,Pirates at D-backs,Chase Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/01/14,08/01/14,12:40 AM,12:40 AM,FALSE,TRUE,07/31/14,08:40 PM,08:40 PM,FREE,BUSY 142 | 08/01/14,09:40 PM,09:40 PM,Pirates at D-backs,Chase Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/02/14,08/02/14,12:40 AM,12:40 AM,FALSE,TRUE,08/01/14,08:40 PM,08:40 PM,FREE,BUSY 143 | 08/02/14,08:10 PM,08:10 PM,Pirates at D-backs,Chase Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/02/14,08/02/14,11:10 PM,11:10 PM,FALSE,TRUE,08/02/14,07:10 PM,07:10 PM,FREE,BUSY 144 | 08/03/14,04:10 PM,04:10 PM,Pirates at D-backs,Chase Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/03/14,08/03/14,07:10 PM,07:10 PM,FALSE,TRUE,08/03/14,03:10 PM,03:10 PM,FREE,BUSY 145 | 08/05/14,07:05 PM,07:05 PM,Marlins at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/05/14,08/05/14,10:05 PM,10:05 PM,FALSE,TRUE,08/05/14,06:05 PM,06:05 PM,FREE,BUSY 146 | 08/06/14,07:05 PM,07:05 PM,Marlins at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/06/14,08/06/14,10:05 PM,10:05 PM,FALSE,TRUE,08/06/14,06:05 PM,06:05 PM,FREE,BUSY 147 | 08/07/14,07:05 PM,07:05 PM,Marlins at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/07/14,08/07/14,10:05 PM,10:05 PM,FALSE,TRUE,08/07/14,06:05 PM,06:05 PM,FREE,BUSY 148 | 08/08/14,07:05 PM,07:05 PM,Padres at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/08/14,08/08/14,10:05 PM,10:05 PM,FALSE,TRUE,08/08/14,06:05 PM,06:05 PM,FREE,BUSY 149 | 08/09/14,07:05 PM,07:05 PM,Padres at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/09/14,08/09/14,10:05 PM,10:05 PM,FALSE,TRUE,08/09/14,06:05 PM,06:05 PM,FREE,BUSY 150 | 08/10/14,01:35 PM,01:35 PM,Padres at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/10/14,08/10/14,04:35 PM,04:35 PM,FALSE,TRUE,08/10/14,12:35 PM,12:35 PM,FREE,BUSY 151 | 08/11/14,07:05 PM,07:05 PM,Tigers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/11/14,08/11/14,10:05 PM,10:05 PM,FALSE,TRUE,08/11/14,06:05 PM,06:05 PM,FREE,BUSY 152 | 08/12/14,07:05 PM,07:05 PM,Tigers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/12/14,08/12/14,10:05 PM,10:05 PM,FALSE,TRUE,08/12/14,06:05 PM,06:05 PM,FREE,BUSY 153 | 08/13/14,07:08 PM,07:08 PM,Pirates at Tigers,Comerica Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/13/14,08/13/14,10:08 PM,10:08 PM,FALSE,TRUE,08/13/14,06:08 PM,06:08 PM,FREE,BUSY 154 | 08/14/14,01:08 PM,01:08 PM,Pirates at Tigers,Comerica Park,"Local Radio: KDKA-FM 93.7",08/14/14,08/14/14,04:08 PM,04:08 PM,FALSE,TRUE,08/14/14,12:08 PM,12:08 PM,FREE,BUSY 155 | 08/15/14,07:05 PM,07:05 PM,Pirates at Nationals,Nationals Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/15/14,08/15/14,10:05 PM,10:05 PM,FALSE,TRUE,08/15/14,06:05 PM,06:05 PM,FREE,BUSY 156 | 08/16/14,07:05 PM,07:05 PM,Pirates at Nationals,Nationals Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/16/14,08/16/14,10:05 PM,10:05 PM,FALSE,TRUE,08/16/14,06:05 PM,06:05 PM,FREE,BUSY 157 | 08/17/14,05:05 PM,05:05 PM,Pirates at Nationals,Nationals Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/17/14,08/17/14,08:05 PM,08:05 PM,FALSE,TRUE,08/17/14,04:05 PM,04:05 PM,FREE,BUSY 158 | 08/18/14,07:05 PM,07:05 PM,Braves at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/18/14,08/18/14,10:05 PM,10:05 PM,FALSE,TRUE,08/18/14,06:05 PM,06:05 PM,FREE,BUSY 159 | 08/19/14,07:05 PM,07:05 PM,Braves at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/19/14,08/19/14,10:05 PM,10:05 PM,FALSE,TRUE,08/19/14,06:05 PM,06:05 PM,FREE,BUSY 160 | 08/20/14,07:05 PM,07:05 PM,Braves at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/20/14,08/20/14,10:05 PM,10:05 PM,FALSE,TRUE,08/20/14,06:05 PM,06:05 PM,FREE,BUSY 161 | 08/22/14,08:10 PM,08:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/22/14,08/22/14,11:10 PM,11:10 PM,FALSE,TRUE,08/22/14,07:10 PM,07:10 PM,FREE,BUSY 162 | 08/23/14,07:10 PM,07:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/23/14,08/23/14,10:10 PM,10:10 PM,FALSE,TRUE,08/23/14,06:10 PM,06:10 PM,FREE,BUSY 163 | 08/24/14,02:10 PM,02:10 PM,Pirates at Brewers,Miller Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/24/14,08/24/14,05:10 PM,05:10 PM,FALSE,TRUE,08/24/14,01:10 PM,01:10 PM,FREE,BUSY 164 | 08/25/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/25/14,08/25/14,10:05 PM,10:05 PM,FALSE,TRUE,08/25/14,06:05 PM,06:05 PM,FREE,BUSY 165 | 08/26/14,07:05 PM,07:05 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/26/14,08/26/14,10:05 PM,10:05 PM,FALSE,TRUE,08/26/14,06:05 PM,06:05 PM,FREE,BUSY 166 | 08/27/14,12:35 PM,12:35 PM,Cardinals at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/27/14,08/27/14,03:35 PM,03:35 PM,FALSE,TRUE,08/27/14,11:35 AM,11:35 AM,FREE,BUSY 167 | 08/29/14,07:05 PM,07:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/29/14,08/29/14,10:05 PM,10:05 PM,FALSE,TRUE,08/29/14,06:05 PM,06:05 PM,FREE,BUSY 168 | 08/30/14,04:05 PM,04:05 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS -- FS1 ----- Local Radio: KDKA-FM 93.7",08/30/14,08/30/14,07:05 PM,07:05 PM,FALSE,TRUE,08/30/14,03:05 PM,03:05 PM,FREE,BUSY 169 | 08/31/14,01:35 PM,01:35 PM,Reds at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",08/31/14,08/31/14,04:35 PM,04:35 PM,FALSE,TRUE,08/31/14,12:35 PM,12:35 PM,FREE,BUSY 170 | 09/01/14,02:15 PM,02:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/01/14,09/01/14,05:15 PM,05:15 PM,FALSE,TRUE,09/01/14,01:15 PM,01:15 PM,FREE,BUSY 171 | 09/02/14,08:15 PM,08:15 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/02/14,09/02/14,11:15 PM,11:15 PM,FALSE,TRUE,09/02/14,07:15 PM,07:15 PM,FREE,BUSY 172 | 09/03/14,01:45 PM,01:45 PM,Pirates at Cardinals,Busch Stadium,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/03/14,09/03/14,04:45 PM,04:45 PM,FALSE,TRUE,09/03/14,12:45 PM,12:45 PM,FREE,BUSY 173 | 09/05/14,02:20 PM,02:20 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/05/14,09/05/14,05:20 PM,05:20 PM,FALSE,TRUE,09/05/14,01:20 PM,01:20 PM,FREE,BUSY 174 | 09/06/14,04:05 PM,04:05 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/06/14,09/06/14,07:05 PM,07:05 PM,FALSE,TRUE,09/06/14,03:05 PM,03:05 PM,FREE,BUSY 175 | 09/07/14,02:20 PM,02:20 PM,Pirates at Cubs,Wrigley Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/07/14,09/07/14,05:20 PM,05:20 PM,FALSE,TRUE,09/07/14,01:20 PM,01:20 PM,FREE,BUSY 176 | 09/08/14,07:05 PM,07:05 PM,Pirates at Phillies,Citizens Bank Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/08/14,09/08/14,10:05 PM,10:05 PM,FALSE,TRUE,09/08/14,06:05 PM,06:05 PM,FREE,BUSY 177 | 09/09/14,07:05 PM,07:05 PM,Pirates at Phillies,Citizens Bank Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/09/14,09/09/14,10:05 PM,10:05 PM,FALSE,TRUE,09/09/14,06:05 PM,06:05 PM,FREE,BUSY 178 | 09/10/14,07:05 PM,07:05 PM,Pirates at Phillies,Citizens Bank Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/10/14,09/10/14,10:05 PM,10:05 PM,FALSE,TRUE,09/10/14,06:05 PM,06:05 PM,FREE,BUSY 179 | 09/11/14,07:05 PM,07:05 PM,Pirates at Phillies,Citizens Bank Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/11/14,09/11/14,10:05 PM,10:05 PM,FALSE,TRUE,09/11/14,06:05 PM,06:05 PM,FREE,BUSY 180 | 09/12/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/12/14,09/12/14,10:05 PM,10:05 PM,FALSE,TRUE,09/12/14,06:05 PM,06:05 PM,FREE,BUSY 181 | 09/13/14,07:05 PM,07:05 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/13/14,09/13/14,10:05 PM,10:05 PM,FALSE,TRUE,09/13/14,06:05 PM,06:05 PM,FREE,BUSY 182 | 09/14/14,01:35 PM,01:35 PM,Cubs at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/14/14,09/14/14,04:35 PM,04:35 PM,FALSE,TRUE,09/14/14,12:35 PM,12:35 PM,FREE,BUSY 183 | 09/16/14,07:05 PM,07:05 PM,Red Sox at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/16/14,09/16/14,10:05 PM,10:05 PM,FALSE,TRUE,09/16/14,06:05 PM,06:05 PM,FREE,BUSY 184 | 09/17/14,07:05 PM,07:05 PM,Red Sox at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/17/14,09/17/14,10:05 PM,10:05 PM,FALSE,TRUE,09/17/14,06:05 PM,06:05 PM,FREE,BUSY 185 | 09/18/14,07:05 PM,07:05 PM,Red Sox at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/18/14,09/18/14,10:05 PM,10:05 PM,FALSE,TRUE,09/18/14,06:05 PM,06:05 PM,FREE,BUSY 186 | 09/19/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/19/14,09/19/14,10:05 PM,10:05 PM,FALSE,TRUE,09/19/14,06:05 PM,06:05 PM,FREE,BUSY 187 | 09/20/14,07:05 PM,07:05 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/20/14,09/20/14,10:05 PM,10:05 PM,FALSE,TRUE,09/20/14,06:05 PM,06:05 PM,FREE,BUSY 188 | 09/21/14,01:35 PM,01:35 PM,Brewers at Pirates,PNC Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/21/14,09/21/14,04:35 PM,04:35 PM,FALSE,TRUE,09/21/14,12:35 PM,12:35 PM,FREE,BUSY 189 | 09/22/14,07:10 PM,07:10 PM,Pirates at Braves,Turner Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/22/14,09/22/14,10:10 PM,10:10 PM,FALSE,TRUE,09/22/14,06:10 PM,06:10 PM,FREE,BUSY 190 | 09/23/14,07:10 PM,07:10 PM,Pirates at Braves,Turner Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/23/14,09/23/14,10:10 PM,10:10 PM,FALSE,TRUE,09/23/14,06:10 PM,06:10 PM,FREE,BUSY 191 | 09/24/14,07:10 PM,07:10 PM,Pirates at Braves,Turner Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/24/14,09/24/14,10:10 PM,10:10 PM,FALSE,TRUE,09/24/14,06:10 PM,06:10 PM,FREE,BUSY 192 | 09/25/14,07:10 PM,07:10 PM,Pirates at Braves,Turner Field,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/25/14,09/25/14,10:10 PM,10:10 PM,FALSE,TRUE,09/25/14,06:10 PM,06:10 PM,FREE,BUSY 193 | 09/26/14,07:10 PM,07:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/26/14,09/26/14,10:10 PM,10:10 PM,FALSE,TRUE,09/26/14,06:10 PM,06:10 PM,FREE,BUSY 194 | 09/27/14,04:10 PM,04:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/27/14,09/27/14,07:10 PM,07:10 PM,FALSE,TRUE,09/27/14,03:10 PM,03:10 PM,FREE,BUSY 195 | 09/28/14,01:10 PM,01:10 PM,Pirates at Reds,Great American Ball Park,"Local TV: ROOT SPORTS ----- Local Radio: KDKA-FM 93.7",09/28/14,09/28/14,04:10 PM,04:10 PM,FALSE,TRUE,09/28/14,12:10 PM,12:10 PM,FREE,BUSY -------------------------------------------------------------------------------- /data/simple.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |Lorem ipsum dolor sit amet, ...
88 |Nunc cursus, justo eget elementum dictum, ...
91 |