Leo Torres
asked on
Cant seem to collect Time and Home team?
I had this question after viewing Powershell code used to work.
Cant seem to find a way to return Home team and time
Cant seem to find a way to return Home team and time
CLS
$weeks = (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)
$wc = New-Object System.Net.WebClient;
$doc = New-Object HtmlAgilityPack.HtmlDocument
Foreach($week in $weeks){
$Website = "http://www.espn.com/nfl/schedule/_/week/$week/seasontype/2"
write-host $Website
$doc.LoadHtml($wc.DownloadString($Website))
# Day headers - need to assign that per index later ...
$days = $doc.DocumentNode.SelectNodes('//div["sched-container"]/h2') | Select -Expand InnerText
$games = @()
$AllGames = @()
$index = 0
foreach ($day in $doc.DocumentNode.SelectNodes('//table["schedule"]'))
{
$day.SelectNodes("tbody/tr") |
% {
$data = $_.SelectNodes("td/a")[0..5] | Select -Expand InnerText
$games += New-Object PsObject -Property @{
Day = $days[$index]
Visitor = $data[0]
Home = $data[1]
Time = $data[2]
}
}
$index++
}
$games | select Day, Visitor, Home, Time | Format-Table -AutoSize
}
Are you sure home and time are not under another XML tag in a lower node? Like /td/a/time
ASKER
yes I saw that but not sure what syntax is to get there
?
$day.SelectNodes("tbody/tr ").SelectN odes("/td/ a/time")
?
$day.SelectNodes("tbody/tr
Can you post the raw xml ??
here is the part you are interested...
<div id="sched-container">
<div class="loading" style="display: none;"></div>
<h2 class="table-caption">Thursday, September 28</h2>
<div class="responsive-table-wrap">
<table class="schedule has-team-logos align-left" cellspacing="0" cellpadding="0" data-text-contract="Contract table" data-text-expand="Expand table" data-fix-cols="0" data-behavior="responsive_table" data-mobile-force-responsive="true">
<thead>
<tr>
<th class="matchup"><span>matchup</span></th>
<th class="matchup"></th>
<th class="schedule-timezone"><span>time </span><span data-behavior="date_timezone"> (ET)</span></th>
<th><span>nat tv</span></th>
<th><span>location</span></th>
<th><span>tickets</span></th>
</tr>
</thead>
<tbody>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/chi/chicago-bears"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/chi.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/chi/chicago-bears"><span>Chicago</span> <abbr title="Chicago Bears">CHI</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/gb/green-bay-packers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/gb.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/gb/green-bay-packers"><span>Green Bay</span> <abbr title="Green Bay Packers">GB</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-09-29T00:25Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951678">8:25 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/gb">Lambeau Field</a>, Green Bay</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/green-bay-packers-tickets/packers-vs-bears-1-1-2291550.html?wsUser=717">1,881 tickets <span id="ticketAvailable">available</span> from $158</a></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<h2 class="table-caption">Sunday, October 1</h2>
<div class="responsive-table-wrap">
<table class="schedule has-team-logos align-left" cellspacing="0" cellpadding="0" data-text-contract="Contract table" data-text-expand="Expand table" data-fix-cols="0" data-behavior="responsive_table" data-mobile-force-responsive="true">
<thead>
<tr>
<th class="matchup"><span>matchup</span></th>
<th class="matchup"></th>
<th class="schedule-timezone"><span>time </span><span data-behavior="date_timezone"> (ET)</span></th>
<th><span>nat tv</span></th>
<th><span>location</span></th>
<th><span>tickets</span></th>
</tr>
</thead>
<tbody>
<tr class="odd" data-is-neutral-site="true">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/no/new-orleans-saints"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/no.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/no/new-orleans-saints"><span>New Orleans</span> <abbr title="New Orleans Saints">NO</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="vs">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/mia/miami-dolphins"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/mia.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/mia/miami-dolphins"><span>Miami</span> <abbr title="Miami Dolphins">MIA</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T13:30Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400950241">9:30 AM</a></td>
<td class="network">FOX</td>
<td class="schedule-location">Wembley Stadium, London</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/nfl-international-series-tickets/nfl-international-series-10-1-2229540.html?wsUser=717">302 tickets <span id="ticketAvailable">available</span> from $181</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/buf/buffalo-bills"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/buf.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/buf/buffalo-bills"><span>Buffalo</span> <abbr title="Buffalo Bills">BUF</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/atl/atlanta-falcons"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/atl.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/atl/atlanta-falcons"><span>Atlanta</span> <abbr title="Atlanta Falcons">ATL</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951685">1:00 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location">Mercedes-Benz Stadium, Atlanta</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/atlanta-falcons-tickets/falcons-vs-bills-1-6-2291659.html?wsUser=717">4,218 tickets <span id="ticketAvailable">available</span> from $82</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/pit/pittsburgh-steelers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/pit.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/pit/pittsburgh-steelers"><span>Pittsburgh</span> <abbr title="Pittsburgh Steelers">PIT</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/bal/baltimore-ravens"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/bal.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/bal/baltimore-ravens"><span>Baltimore</span> <abbr title="Baltimore Ravens">BAL</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951708">1:00 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/bal">M&T Bank Stadium</a>, Baltimore</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/baltimore-ravens-tickets/ravens-vs-steelers-1-3-2291609.html?wsUser=717">2,252 tickets <span id="ticketAvailable">available</span> from $120</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/cin/cincinnati-bengals"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/cin.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/cin/cincinnati-bengals"><span>Cincinnati</span> <abbr title="Cincinnati Bengals">CIN</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/cle/cleveland-browns"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/cle.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/cle/cleveland-browns"><span>Cleveland</span> <abbr title="Cleveland Browns">CLE</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951712">1:00 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/cle">FirstEnergy Stadium</a>, Cleveland</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/cleveland-browns-tickets/browns-vs-bengals-1-2-2291612.html?wsUser=717">6,707 tickets <span id="ticketAvailable">available</span> from $28</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/lar/los-angeles-rams"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/lar.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/lar/los-angeles-rams"><span>Los Angeles</span> <abbr title="Los Angeles Rams">LAR</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/dal/dallas-cowboys"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/dal.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/dal/dallas-cowboys"><span>Dallas</span> <abbr title="Dallas Cowboys">DAL</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951716">1:00 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/dal">AT&T Stadium</a>, Arlington</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/dallas-cowboys-tickets/cowboys-vs-rams-1-4-2291716.html?wsUser=717">12,146 tickets <span id="ticketAvailable">available</span> from $21</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/ten/tennessee-titans"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/ten.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/ten/tennessee-titans"><span>Tennessee</span> <abbr title="Tennessee Titans">TEN</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/hou/houston-texans"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/hou.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/hou/houston-texans"><span>Houston</span> <abbr title="Houston Texans">HOU</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951720">1:00 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/hou">NRG Stadium</a>, Houston</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/houston-texans-tickets/texans-vs-titans-1-3-2291551.html?wsUser=717">4,524 tickets <span id="ticketAvailable">available</span> from $33</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/det/detroit-lions"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/det.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/det/detroit-lions"><span>Detroit</span> <abbr title="Detroit Lions">DET</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/min/minnesota-vikings"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/min.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/min/minnesota-vikings"><span>Minnesota</span> <abbr title="Minnesota Vikings">MIN</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951724">1:00 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location">U.S. Bank Stadium, Minneapolis</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/minnesota-vikings-tickets/vikings-1-2-2291583.html?wsUser=717">5,135 tickets <span id="ticketAvailable">available</span> from $70</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/car/carolina-panthers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/car.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/car/carolina-panthers"><span>Carolina</span> <abbr title="Carolina Panthers">CAR</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/ne/new-england-patriots"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/ne.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/ne/new-england-patriots"><span>New England</span> <abbr title="New England Patriots">NE</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951727">1:00 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/ne">Gillette Stadium</a>, Foxboro</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/new-england-patriots-tickets/patriots-1-7-2291686.html?wsUser=717">961 tickets <span id="ticketAvailable">available</span> from $163</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/jax/jacksonville-jaguars"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/jax.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/jax/jacksonville-jaguars"><span>Jacksonville</span> <abbr title="Jacksonville Jaguars">JAX</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/nyj/new-york-jets"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/nyj.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/nyj/new-york-jets"><span>New York</span> <abbr title="New York Jets">NYJ</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T17:00Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951730">1:00 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/nyj">MetLife Stadium</a>, East Rutherford</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/new-york-jets-tickets/jets-vs-jaguars-1-8-2291580.html?wsUser=717">8,067 tickets <span id="ticketAvailable">available</span> from $18</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/sf/san-francisco-49ers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/sf.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/sf/san-francisco-49ers"><span>San Francisco</span> <abbr title="San Francisco 49ers">SF</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/ari/arizona-cardinals"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/ari.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/ari/arizona-cardinals"><span>Arizona</span> <abbr title="Arizona Cardinals">ARI</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T20:05Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951735">4:05 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/ari">U of Phoenix Stadium</a>, Glendale</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/arizona-cardinals-tickets/cardinals-vs-49ers-1-2-2291618.html?wsUser=717">5,842 tickets <span id="ticketAvailable">available</span> from $32</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/phi/philadelphia-eagles"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/phi.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/phi/philadelphia-eagles"><span>Philadelphia</span> <abbr title="Philadelphia Eagles">PHI</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/lac/los-angeles-chargers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/lac.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/lac/los-angeles-chargers"><span>Los Angeles</span> <abbr title="Los Angeles Chargers">LAC</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T20:05Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951738">4:05 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location">StubHub Center, Carson</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/los-angeles-chargers-tickets/chargers-vs-eagles-1-6-2291711.html?wsUser=717">1,163 tickets <span id="ticketAvailable">available</span> from $205</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/nyg/new-york-giants"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/nyg.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/nyg/new-york-giants"><span>New York</span> <abbr title="New York Giants">NYG</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/tb/tampa-bay-buccaneers"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/tb.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/tb/tampa-bay-buccaneers"><span>Tampa Bay</span> <abbr title="Tampa Bay Buccaneers">TB</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T20:05Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951742">4:05 PM</a></td>
<td class="network">FOX</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/tb">Raymond James Stadium</a>, Tampa</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/tampa-bay-buccaneers-tickets/buccaneers-vs-giants-1-8-2291778.html?wsUser=717">1,686 tickets <span id="ticketAvailable">available</span> from $118</a></td>
<td></td>
</tr>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/oak/oakland-raiders"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/oak.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/oak/oakland-raiders"><span>Oakland</span> <abbr title="Oakland Raiders">OAK</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/den/denver-broncos"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/den.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/den/denver-broncos"><span>Denver</span> <abbr title="Denver Broncos">DEN</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-01T20:25Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951744">4:25 PM</a></td>
<td class="network">CBS</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/den">Sports Authority Field at Mile High</a>, Denver</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/denver-broncos-tickets/broncos-vs-raiders-1-2-2291621.html?wsUser=717">1,252 tickets <span id="ticketAvailable">available</span> from $132</a></td>
<td></td>
</tr>
<tr class="even" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/ind/indianapolis-colts"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/ind.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/ind/indianapolis-colts"><span>Indianapolis</span> <abbr title="Indianapolis Colts">IND</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/sea/seattle-seahawks"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/sea.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/sea/seattle-seahawks"><span>Seattle</span> <abbr title="Seattle Seahawks">SEA</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-02T00:30Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951747">8:30 PM</a></td>
<td class="network">NBC</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/sea">CenturyLink Field</a>, Seattle</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/seattle-seahawks-tickets/seahawks-vs-colts-1-7-2291777.html?wsUser=717">1,627 tickets <span id="ticketAvailable">available</span> from $165</a></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<h2 class="table-caption">Monday, October 2</h2>
<div class="responsive-table-wrap">
<table class="schedule has-team-logos align-left" cellspacing="0" cellpadding="0" data-text-contract="Contract table" data-text-expand="Expand table" data-fix-cols="0" data-behavior="responsive_table" data-mobile-force-responsive="true">
<thead>
<tr>
<th class="matchup"><span>matchup</span></th>
<th class="matchup"></th>
<th class="schedule-timezone"><span>time </span><span data-behavior="date_timezone"> (ET)</span></th>
<th><span>nat tv</span></th>
<th><span>location</span></th>
<th><span>tickets</span></th>
</tr>
</thead>
<tbody>
<tr class="odd" data-is-neutral-site="false">
<td class="">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/wsh/washington-redskins"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/wsh.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/wsh/washington-redskins"><span>Washington</span> <abbr title="Washington Redskins">WSH</abbr></a></td>
<td class="home">
<div class="home-wrapper" data-home-text="at">
<div class="teams" data-behavior="fix_broken_images">
<a name="&lpos=nfl:schedule:team" href="/nfl/team/_/name/kc/kansas-city-chiefs"><img src="http://a.espncdn.com/combiner/i?img=/i/teamlogos/nfl/500/scoreboard/kc.png&h=50" class="schedule-team-logo imageLoaded"></a>
</div><a name="&lpos=nfl:schedule:team" class="team-name" href="/nfl/team/_/name/kc/kansas-city-chiefs"><span>Kansas City</span> <abbr title="Kansas City Chiefs">KC</abbr></a></div>
</td>
<td data-behavior="date_time" data-date="2017-10-03T00:30Z"><a data-dateformat="time1" name="&lpos=nfl:schedule:time" href="/nfl/game?gameId=400951752">8:30 PM</a></td>
<td class="network">
<a name="&lpos=nfl:schedule:on-air" href="http://www.espn.com/espntv/onair/index"><img src="http://a.espncdn.com/redesign/assets/img/logos/networks/espn-red@2x.png" alt="ESPN" class="ESPN imageLoaded"></a>
<br>
<a name="&lpos=nfl:schedule:on-air" href="http://www.espn.com/watchespn/index/_/gameId/400951752/sport/football/lang/en"><img src="http://a.espncdn.com/redesign/assets/img/logos/networks/logo-watchespn@2x.png" alt="WatchESPN" class="watch-event-link imageLoaded"></a>
</td>
<td class="schedule-location"><a href="http://www.espn.com/nfl/team/stadium/_/name/kc">Arrowhead Stadium</a>, Kansas City</td>
<td class="tickets"><a target="_blank" class="external" name="&lpos=nfl:schedule:tickets" href="https://www.vividseats.com/nfl/kansas-city-chiefs-tickets/chiefs-vs-redskins-1-7-2291751.html?wsUser=717">5,337 tickets <span id="ticketAvailable">available</span> from $30</a></td>
<td></td>
</tr>
</tbody>
</table>
</div>
</div>
ASKER
yes Kurt that is the part I am looking to parse.
John this is not xml. Its HTML extracted from the website in the code.
John this is not xml. Its HTML extracted from the website in the code.
ASKER
Any more suggestions on this?
ASKER
Code has changed a bit but I got the home team working can i get some help with time, Please.
CLS
$weeks = (2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)
Add-Type -path C:\pstemp\HtmlAgilityPack\Net40\htmlagilitypack.dll
$wc = New-Object System.Net.WebClient;
$doc = New-Object HtmlAgilityPack.HtmlDocument
Foreach($week in $weeks){
$Website = "http://www.espn.com/nfl/schedule/_/week/$week"
write-host $Website
$doc.LoadHtml($wc.DownloadString($Website))
# Day headers - need to assign that per index later ...
$days = $doc.DocumentNode.SelectNodes('//div["sched-container"]/h2') | Select -Expand InnerText
$games = @()
$AllGames = @()
$index = 0
foreach ($day in $doc.DocumentNode.SelectNodes('//table["schedule"]'))
{
$day.SelectNodes("tbody/tr") |
% {
$data = $_.SelectNodes("td")[0..3] | Select -Expand InnerText
$games += New-Object PsObject -Property @{
Day = $days[$index]
Visitor = $data[0]
Home = $data[1]
Time = $data[2]
}
}
$index++
}
$games | select Day, Visitor, Home, Time | Format-Table -AutoSize
}
ASKER
Whats odd about the code is that it returns the Time column if its "TBD" not an an actual time. Looks like there has to be some sort of conversion so the value can be displayed.
Please help.
Please help.
it returns the Time column if its "TBD" not an an actual time
could not get what this means?
whats the output of your code above?
ASKER
Run the script and you will see.
The only Time value that comes back is the TBD value. Which tells me that I am retrieving data from the right place but since its a date value I am losing the data due to data type.
The only Time value that comes back is the TBD value. Which tells me that I am retrieving data from the right place but since its a date value I am losing the data due to data type.
Run the script and you will see.
do you really want to see :)
here just last part...
http://www.espn.com/nfl/schedule/_/week/17
You cannot call a method on a null-valued expression.
At C:\Users\HAINKURT\Desktop\EE\29052956.ps1:11 char:1
+ $doc.LoadHtml($wc.DownloadString($Website))
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
You cannot call a method on a null-valued expression.
At C:\Users\HAINKURT\Desktop\EE\29052956.ps1:14 char:1
+ $days = $doc.DocumentNode.SelectNodes('//div["sched-container"]/h2') ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
You cannot call a method on a null-valued expression.
At C:\Users\HAINKURT\Desktop\EE\29052956.ps1:19 char:18
+ ... oreach ($day in $doc.DocumentNode.SelectNodes('//table["schedule"]'))
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
I dont have this dll
Add-Type -path C:\pstemp\HtmlAgilityPack\
ASKER
try this
at least we can get attrib value :)
CLS
$weeks = (2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)
Add-Type -path C:\Users\HAINKURT\Desktop\EE\htmlagilitypack.dll
$wc = New-Object System.Net.WebClient;
$doc = New-Object HtmlAgilityPack.HtmlDocument
Foreach($week in $weeks){
$Website = "http://www.espn.com/nfl/schedule/_/week/$week"
write-host $Website
$doc.LoadHtml($wc.DownloadString($Website))
# Day headers - need to assign that per index later ...
$days = $doc.DocumentNode.SelectNodes('//div["sched-container"]/h2') | Select -Expand InnerText
$games = @()
$AllGames = @()
$index = 0
foreach ($day in $doc.DocumentNode.SelectNodes('//table["schedule"]'))
{
$day.SelectNodes("tbody/tr") |
% {
$data = $_.SelectNodes("td")[0..3]
$games += New-Object PsObject -Property @{
Day = $days[$index]
Visitor = $data[0].innerText
Home = $data[1].innerText
Time = $data[2].GetAttributeValue("data-date","")
}
}
$index++
}
$games | select Day, Visitor, Home, Time | Format-Table -AutoSize
}
at least we can get attrib value :)
and this should do the job
result
CLS
$weeks = (2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)
Add-Type -path C:\Users\HAINKURT\Desktop\EE\htmlagilitypack.dll
$wc = New-Object System.Net.WebClient;
$doc = New-Object HtmlAgilityPack.HtmlDocument
Foreach($week in $weeks){
$Website = "http://www.espn.com/nfl/schedule/_/week/$week"
write-host $Website
$doc.LoadHtml($wc.DownloadString($Website))
# Day headers - need to assign that per index later ...
$days = $doc.DocumentNode.SelectNodes('//div["sched-container"]/h2') | Select -Expand InnerText
$games = @()
$AllGames = @()
$index = 0
foreach ($day in $doc.DocumentNode.SelectNodes('//table["schedule"]'))
{
$day.SelectNodes("tbody/tr") |
% {
$data = $_.SelectNodes("td")[0..3]
$obj = New-Object PsObject -Property @{
Day = $days[$index]
Visitor = $data[0].innerText
Home = $data[1].innerText
Time = $data[2].GetAttributeValue("data-date","")
}
$UtcTime = Get-Date -Date $obj.Time;
$dt = $UtcTime.ToString("HH:mm");
$obj.Time = $dt;
$games += $obj;
}
$index++
}
result
http://www.espn.com/nfl/schedule/_/week/17
Day Visitor Home Time
--- ------- ---- ----
Sunday, December 31 Carolina CAR Atlanta ATL 13:00
Sunday, December 31 Cincinnati CIN Baltimore BAL 13:00
Sunday, December 31 Green Bay GB Detroit DET 13:00
Sunday, December 31 Houston HOU Indianapolis IND 13:00
Sunday, December 31 Buffalo BUF Miami MIA 13:00
Sunday, December 31 Chicago CHI Minnesota MIN 13:00
Sunday, December 31 New York NYJ New England NE 13:00
Sunday, December 31 Washington WSH New York NYG 13:00
Sunday, December 31 Dallas DAL Philadelphia PHI 13:00
Sunday, December 31 Cleveland CLE Pittsburgh PIT 13:00
Sunday, December 31 New Orleans NO Tampa Bay TB 13:00
Sunday, December 31 Jacksonville JAX Tennessee TEN 13:00
Sunday, December 31 Kansas City KC Denver DEN 16:25
Sunday, December 31 Oakland OAK Los Angeles LAC 16:25
Sunday, December 31 San Francisco SF Los Angeles LAR 16:25
Sunday, December 31 Arizona ARI Seattle SEA 16:25
ASKER
Sorry dude I just lost my internet. I am in Miami Irma officially closed me for the night. I tried to run your script and I can't get to espn. Posted from phone.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Great thank you still no power can't test.
ASKER
Great finally got power back man that script works like a charm thank you!
ASKER
Thank you!