hltv-rh
v1.0.8
Published
The unofficial HLTV Node.js API
Downloads
19
Readme
Table of contents
Installation
Usage
import HLTV from 'hltv'
// Or if you're stuck with CommonJS
const { HLTV } = require('hltv')
Configuration
You can create an instance of HLTV with a custom config.
const myHLTV = HLTV.createInstance({hltvUrl: 'my-proxy-server'})
API
getMatch
Parses most information from a match page
Option | Type | Default value | Description | :---:|:---:|:---:|:---:| id | int | - | The match id
HLTV.getMatch({id: 2306295}).then(res => {
...
})
getMatches
Parses all matches from the hltv.org/matches/
page
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| | - | - | - | - |
HLTV.getMatches().then((res) => {
...
})
See schema for Upcoming Matches
getMatchesStats
Parses all matches from the hltv.org/stats/matches
page
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| | startDate | string? | - | - | | endDate | string? | - | - | | matchType | MatchType? | - | - | | maps | Map[]? | - | - |
HLTV.getMatchesStats({startDate: '2017-07-10', endDate: '2017-07-18'}).then((res) => {
...
})
getMatchMapStats
Parses info from the single map stats page (hltv.org/stats/matches/mapstatsid/*/*
)
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| | id | number | - | - |
HLTV.getMatchMapStats({id: 49968}).then((res) => {
...
})
getResults
Parses all matches from the hltv.org/results/
page
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| pages | int | 1 | Number of pages with results to be parsed |
HLTV.getResults({pages: 2}).then((res) => {
...
})
getStreams
Parses all streams present on the front page of HLTV
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| loadLinks | boolean | false | Enables parsing of the stream links. Its an option since it can slow down the response (every stream is a separate request).
HLTV.getStreams().then((res) => {
...
})
getRecentThreads
Parses the latest threads on the front page of HLTV
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| | - | - | - | - |
HLTV.getRecentThreads().then((res) => {
...
})
getTeamRanking
Parses the info from the hltv.org/ranking/teams/
page
Option | Type | Default Value | Description |
:---:|:---:|:---:|:---:|
| year | string | - | - |
| month | string | - | Must be lowercase and in MMMM format |
| day | string | - | - |
| country | string | - | Must be capitalized ('Brazil'
, 'France'
etc)
// If you don't provide a filter the latest ranking will be parsed
HLTV.getTeamRanking()
HLTV.getTeamRanking({country: 'Thailand'})
HLTV.getTeamRanking({year: '2017', month: 'may', day: '29'}).then((res) => {
...
})
getTeam
Parses the info from the hltv.org/team/
page
Option | Type | Default value | Description | :---:|:---:|:---:|:---:| id | int | - | The team id
HLTV.getTeam({id: 6137}).then(res => {
...
})
getTeamStats
Parses the info from the hltv.org/stats/teams/
page
Option | Type | Default value | Description | :---:|:---:|:---:|:---:| id | int | - | The team id
HLTV.getTeamStats({id: 6137}).then(res => {
...
})
getPlayer
Parses the info from the hltv.org/player/
page
Option | Type | Default value | Description | :---:|:---:|:---:|:---:| id | int | - | The player id
HLTV.getPlayer({id: 6137}).then(res => {
...
})
connectToScorebot
Presents an interface to receive data when the HLTV scorebot updates
NOTE: While connectToScorebot
returns a Promise, the promise will never resolve. Instead you should pass the callbacks described below.
Option | Type | Default Value | Description | :---:|:---:|:---:|:---:| | id | int | - | The match ID | | onScoreboardUpdate | function? | - | Callback that is called when there is new scoreboard data | | onLogUpdate | function? | - | Callback that is called when there is new game log data | | onConnect | function? | - | Callback that is called when a connection with the scorebot is established | | onDisconnect | function? | - | Callback that is called when the scorebot disconnects |
HLTV.connectToScorebot({id: 2311609, onScoreboardUpdate: (data) => {
...
}, onLogUpdate: (data) => {
...
}})
The onLogUpdate
callback is passed an LogUpdate object
The onScoreboardUpdate
callback is passed an ScoreboardUpdate object