NHL.com + Sochi 2014 Data URLs in JSON and JSONP

Kane One

Moderator
Feb 6, 2010
43,260
10,874
Brooklyn, New NY
Personally I'd roll SQL Server and asp.net MVC/Razor/C# but to each their own :)

After three years since my post saying I'd do PHP and MySQL, I'd now also use C# with SQL Server. I would however use MVC on the client-side such as Angular or jQuery and only use C# for the API. That's if I'm only planning on using the server for the website.

Since my VPS runs Ubuntu and I use it for other apps, I'd probably just scrap out C# with either Java or Python (I'd likely go with Python) and scrap SQL Server with MySQL.

One thing that is guaranteed is I am not touching PHP ever again.
 

morehockeystats

Unusual hockey stats
Dec 13, 2016
617
296
Columbus
morehockeystats.com
To refresh the whole page? No, they don't. That's a terrible idea.

You should make an API call instead and only refresh the data on the page instead of refreshing the whole page.

They do.
That's what they came up with in 2007 and kept it since.
What they should've done in 2007 and what they should be doing now that's another matter.
 

morehockeystats

Unusual hockey stats
Dec 13, 2016
617
296
Columbus
morehockeystats.com
After three years since my post saying I'd do PHP and MySQL, I'd now also use C# with SQL Server. I would however use MVC on the client-side such as Angular or jQuery and only use C# for the API. That's if I'm only planning on using the server for the website.

Since my VPS runs Ubuntu and I use it for other apps, I'd probably just scrap out C# with either Java or Python (I'd likely go with Python) and scrap SQL Server with MySQL.

One thing that is guaranteed is I am not touching PHP ever again.

I do all programming in Perl/bash with the least amount of JS possible on website pages (I do use d3)
The data from the games goes into MongoDB. The data for the website is summarized from Mongo into MySQL.
 

Kane One

Moderator
Feb 6, 2010
43,260
10,874
Brooklyn, New NY
They do.
That's what they came up with in 2007 and kept it since.
What they should've done in 2007 and what they should be doing now that's another matter.

I think we're both referring to two separate pages. :laugh:

There's that bland HTML page which shows all the game data, which I'm assuming that's what you're referring to. If so, then you're definitely right.

I'm talking about the Gamecenter data, which refreshes automatically.
 

morehockeystats

Unusual hockey stats
Dec 13, 2016
617
296
Columbus
morehockeystats.com
I think we're both referring to two separate pages. :laugh:

There's that bland HTML page which shows all the game data, which I'm assuming that's what you're referring to. If so, then you're definitely right.

I'm talking about the Gamecenter data, which refreshes automatically.

Oh, yes, indeed. I get most of my data from the bland HTML. :) It does have that self-refreshing JS though. :)
 

HeresLookingAtEuclid

Registered User
May 6, 2017
6
0
Is all of that data on the Gamecenter page? If so, there may be JSON files there you could scrape the data from, because those JSONs must be getting updated after corrections.

You need to collect from both. Each has data the other does not.

My "holy grail" is a single feed that has everything. Presumably it would be a structured document like JSON.

(Also, whoever designed the JSON schema needs to be slapped.)
 

morehockeystats

Unusual hockey stats
Dec 13, 2016
617
296
Columbus
morehockeystats.com
I'm wondering if anyone knows of a JSON equivalent to the NHL's TH and TV files (TOI Home and Visitor) with line items for each player's individual shifts?

One place I've been looking is the stats.api.nhl.com server.

I've found the editorial content feed and the schedule by date range feed. Since the editorial content is game-by-game, and the main play by play is also there, I could imagine more game-by-game stuff being there.

statsapi.web.nhl.com/api/v1/game/2016020123/content
statsapi.web.nhl.com/api/v1/game/2016020123/feed/live

Then there's live.nhle.com/GameData. It has a variety of things; looks more live stuff than archival

So a related question, I guess. I know of:

/SeasonSchedule-20162017.json
/GCScoreboard/2016-10-30.jsonp
/20162017/2016020123/gc/gcsb.jsonp
/20162017/2016020123/gc/gcbx.jsonp
/20162017/2016020123/PlayByPlay.json
/20162017/2016020123/Roster.jsonp

The PlayByPlay strangely only has "most" of the game events; not all of them.
The Roster seems to only be for older games; newer games don't seem to have it.

Anyone know if there's a Shift feed? Or indeed of any other feeds other than the ones listed?

As I am rewriting my scraper I took a thorough look, and I couldn't find anything but the stuff you listed. One thing I didn't do was to trace the loading of the webpage during the match itself, I will have to do it for the next game on June 5th.

It looks like the Roster json is indeed missing (and not really necessary because the HTML roster report is fairly easy to parse). I couldn't find any use for gcbx and gcsb and the Scoreboard and the live content (but my needs might've been different).

So for me it all practically boiling down to:
* PlayByPlay.json
* live feed
* PL.html, GS.html, ES.html (TV/TH.html for you, I guess - they do get updated live)

Comparing these I find that the live feed doesn't have On-Ice information, PBP.json has it but only has Shot, Hit, Penalty and Goal events, and PL.html has everything but the parser is tougher. The live feed may yield GS/ES unnecessary though.
 

morehockeystats

Unusual hockey stats
Dec 13, 2016
617
296
Columbus
morehockeystats.com
I'm wondering if anyone knows of a JSON equivalent to the NHL's TH and TV files (TOI Home and Visitor) with line items for each player's individual shifts?

One place I've been looking is the stats.api.nhl.com server.

I've found the editorial content feed and the schedule by date range feed. Since the editorial content is game-by-game, and the main play by play is also there, I could imagine more game-by-game stuff being there.

statsapi.web.nhl.com/api/v1/game/2016020123/content
statsapi.web.nhl.com/api/v1/game/2016020123/feed/live

Then there's live.nhle.com/GameData. It has a variety of things; looks more live stuff than archival

So a related question, I guess. I know of:

/SeasonSchedule-20162017.json
/GCScoreboard/2016-10-30.jsonp
/20162017/2016020123/gc/gcsb.jsonp
/20162017/2016020123/gc/gcbx.jsonp
/20162017/2016020123/PlayByPlay.json
/20162017/2016020123/Roster.jsonp

The PlayByPlay strangely only has "most" of the game events; not all of them.
The Roster seems to only be for older games; newer games don't seem to have it.

Anyone know if there's a Shift feed? Or indeed of any other feeds other than the ones listed?
Looks like the PlayByPlay feed and the Roster feed are not at these addresses anymore.

Has anyone figured out where they are now?
 

Kane One

Moderator
Feb 6, 2010
43,260
10,874
Brooklyn, New NY
I just started last night redoing my now-shutdown website which calculated NHL standings using different point systems, such as the three-point system. To start, I made a small .NET Core library whose only method returns the records for each team. It's only parameter is the season, in a format like "20172018".

Feel free to use and make any suggestions.

Github: GitHub - parkerrappaport/NhlStandings
NuGet: NhlStandings 1.0.0.0

Let me know if there are any issues.
 
Last edited:
  • Like
Reactions: Bear of Bad News

meetc

Registered User
Jun 30, 2014
3
0
I'm looking for a data source for this year's schedule, my old data source either hasn't been posted yet or is not being added for the upcoming season. It was games per calendar day: http://live.nhle.com/GameData/GCScoreboard/<Y-m-d>.jsonp
The page with full schedule for the season as a whole also isn't available: http://live.nhle.com/GameData/SeasonSchedule-20182019.json

All I need are game ID, teams, day and time.

I have a home made goal light, but I need the schedule for games in order for it to work.
 

Kane One

Moderator
Feb 6, 2010
43,260
10,874
Brooklyn, New NY
I'm looking for a data source for this year's schedule, my old data source either hasn't been posted yet or is not being added for the upcoming season. It was games per calendar day: http://live.nhle.com/GameData/GCScoreboard/<Y-m-d>.jsonp
The page with full schedule for the season as a whole also isn't available: http://live.nhle.com/GameData/SeasonSchedule-20182019.json

All I need are game ID, teams, day and time.

I have a home made goal light, but I need the schedule for games in order for it to work.
https://statsapi.web.nhl.com/api/v1/schedule?startDate=2018-09-21&endDate=2018-12-21

Change the start and end dates to the range you want.
 

Pominville Knows

Registered User
Sep 28, 2012
4,477
333
Down Under
Like having my own scoring race only with selected players. But now when i think about it it might be tougher to get them in scoring order, so i can live with them being static in the two lists with current season scoring in one and career scoring in another.
See i collect autographs in person and want to be able to see players i have met only, how they are doing. I have met probably one third of NHL All-Stars(I count 19 of top-50 in this seasons points race) but also many prospects.
 
Last edited:
  • Like
Reactions: Bear of Bad News

Bear of Bad News

Your Third or Fourth Favorite HFBoards Admin
Sep 27, 2005
13,489
26,821
Ah, gotcha. So you have a predefined list of players and want to track how they're doing in live time. I'd recommend pulling from hockeydb.com myself.
 

Pominville Knows

Registered User
Sep 28, 2012
4,477
333
Down Under
Ah, gotcha. So you have a predefined list of players and want to track how they're doing in live time. I'd recommend pulling from hockeydb.com myself.
Using that link under a player's stats, do i get his whole career showing, his last season or his career totals? I have not yet found the strength to try it in some html document.
 

Doctor No

Registered User
Oct 26, 2005
9,250
3,971
hockeygoalies.org
So the IIHF no longer seems to make the following files popular:
2019 IIHF World Junior Championship

(These are from the 2019 IIHF WJC this past winter).

Can someone help me find the similar files for the 2019 IIHF men's WC? Bonus points if someone can tell me where they've hidden the link within this structure:
IIHF - Home 2019 IIHF ICE HOCKEY WORLD CHAMPIONSHIP

(Because what I've tried so far is to randomly replace "421" with other numbers in the first link above, and that's not sustainable.)
 

Pominville Knows

Registered User
Sep 28, 2012
4,477
333
Down Under
Ah, gotcha. So you have a predefined list of players and want to track how they're doing in live time. I'd recommend pulling from hockeydb.com myself.
Won't i just get like the player's full season by season stats if i use HockeyDB? It would make it real hard to comprehend if we say i have met 150 current NHL:ers.
 

Ad

Upcoming events

Ad

Ad