scores
Track the completion of sports games from a URL.
Usage
const Scores = require("scores")
new Scores({
url: "http://place-where-scores-are.com",
interval: "5m",
timezone: "America/New_York",
dailyCutoff: 180,
completed: { seriesCompleted: true },
parse: {
finalPeriod: 2,
periodLength: "20m",
},
})
.on("event", (game) => console.log(game))
.start()
How does it work?
It intermittently parses the DOM of the URL to see if any games have been completed. There is also logic for what to do in situations where there are no games that day or none of the games have started, or all the games have finished.
API
new Scores(options)
options.interval (Integer, default: 15)
Interval in minutes for how often to request the urloptions.timezone (String, default: 'America/New_York')
A moment-timezone string for which timezone you want to base dates offoptions.dailyCutoff (Integer, default: 180)
The amount of minutes after midnight that the date should switch. This allows you to keep checking for the games that might go past midnight.options.url (String)
The url to request. {date}
will be replaced with today's date as YYYYMMDD
options.logger
A bucker compatible instance which will log interesting thingsoptions.parse (Object)
Options that will be passed directly to the parse method
methods
start()
Start the interval to watch for new gamesstop()
Stop watching
events
scores.on('event', event => { ... })
scores.on('error', err => { ... })
MIT License