Web scraper and parser for HLTV match data
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.3 KiB

HLTV client

Documentation | Crates.io | Repository

A crate for fetching and parsing esports data from HLTV.org.

This crate allows you to fetch and parse upcoming matches, results, event information, player performance. This crate uses async calls via reqwest and parses the HTML document with tl. This API mimics the way you discover information on HLTV. Summary pages like HLTV Matches contain less information in the HTML document than the detailed match-specific page.

Currently, the following API calls are supported:

  • crate::upcoming
  • crate::results
  • crate::get_match


The builders in hltv allow you to build a generic Request object with a Request::fetch method.

async fn results() -> Result<(), Box<dyn Error>> {
    let req = hltv::results()
        .team(4608) // Team Na'Vi

    let matches = req.fetch().await?; // Vec<MatchResult>

Getting more detailed information


This project is dual-licensed under the MIT and Apache 2.0 license.