diff --git a/README.md b/README.md index 2fd3ee8..a0cfad2 100644 --- a/README.md +++ b/README.md @@ -7,35 +7,52 @@ Provides an API for HLTV ```python >>> import main as hltv >>> hltv.top5teams() -['Vitality', 'Heroic', 'Astralis', 'Natus Vincere', 'BIG'] +[{'name': 'Natus Vincere', 'url': 'https://hltv.org/team/4608/natus-vincere'}, + {'name': 'FaZe', 'url': 'https://hltv.org/team/6667/faze'}, + {'name': 'ENCE', 'url': 'https://hltv.org/team/4869/ence'}, + {'name': 'Cloud9', 'url': 'https://hltv.org/team/5752/cloud9'}, + {'name': 'Vitality', 'url': 'https://hltv.org/team/9565/vitality'}] ``` ## `top30teams` ```python >>> hltv.top30teams() -[{'name': 'Vitality', +[{'name': 'Natus Vincere', 'rank': 1, - 'rank-points': 913, - 'team-id': 9565, - 'team-players': [{'name': "Richard 'shox' Papillon", 'player-id': 1225}, - {'name': "Cédric 'RpK' Guipouy", 'player-id': 7169}, - {'name': "Dan 'apEX' Madesclaire", 'player-id': 7322}, - {'name': "Mathieu 'ZywOo' Herbaut", 'player-id': 11893}, - {'name': "Kévin 'misutaaa' Rabier", 'player-id': 14176}]}, + 'rank-points': 935, + 'stats-url': 'https://www.hltv.org/ranking/teams/2022/july/11/details/4608', + 'team-id': 4608, + 'team-players': [{'name': "Aleksandr 's1mple' Kostyliev", + 'player-id': 7998, + 'url': 'https://www.hltv.org/player/7998/s1mple'}, + {'name': "Denis 'electroNic' Sharipov", + 'player-id': 8918, + 'url': 'https://www.hltv.org/player/8918/electronic'}, + {'name': "Viktor 'sdy' Orudzhev", + 'player-id': 12731, + 'url': 'https://www.hltv.org/player/12731/sdy'}, + {'name': "Ilya 'Perfecto' Zalutskiy", + 'player-id': 16947, + 'url': 'https://www.hltv.org/player/16947/perfecto'}, + {'name': "Valeriy 'b1t' Vakhovskiy", + 'player-id': 18987, + 'url': 'https://www.hltv.org/player/18987/b1t'}], + 'team-url': 'https://hltv.org/team/4608/Natus Vincere'}, ... -}] +] ``` ## `top_players` ```python >>> hltv.top_players() -[{'country': b'France', +[{'country': 'France', + 'maps-played': '1020', 'name': 'Mathieu Herbaut', - 'nickname': b'ZywOo', - 'rating': b'1.28', - 'maps-played': b'733'}, + 'nickname': 'ZywOo', + 'rating': '1.27', + 'url': 'https://hltv.org/stats/players/11893/zywoo'}, ... }] ``` @@ -44,267 +61,168 @@ Provides an API for HLTV ```python >>> hltv.get_players("6665") -[{'id': '4954', 'nickname': 'Xyp9x', 'name': "Andreas 'Xyp9x' Højsleth"}, - {'id': '7398', 'nickname': 'dupreeh', 'name': "Peter 'dupreeh' Rasmussen"}, - {'id': '7412', 'nickname': 'gla1ve', 'name': "Lukas 'gla1ve' Rossander"}, - {'id': '7592', 'nickname': 'device', 'name': "Nicolai 'device' Reedtz"}, - {'id': '9032', 'nickname': 'Magisk', 'name': "Emil 'Magisk' Reif"}] -``` - -## `get_player_info` - -```python ->>>hltv.get_player_info('7398') -{'nickname': b'dupreeh', - 'name': b'Peter Rasmussen', - 'country': 'Denmark', - 'team': b'Astralis', - 'age': '27', - 'stats': {'total_kills': '32442', - 'headshot_percent': '50.6%', - 'total_deaths': '28386', - 'kd_ratio': '1.14', - 'dmg_per_round': '78.2', - 'grenade_dmg_per_round': '3.0', - 'maps_played': '1690', - 'rounds_played': '43830', - 'kills_per_round': '0.74', - 'assists_per_round': '0.14', - 'deaths_per_round': '0.65', - 'saved_by_teammate_per_round': '0.10', - 'saved_teammates_per_round': '0.09', - 'rating_1': '1.09'}} +[{'id': '4954', + 'name': "Andreas 'Xyp9x' Højsleth", + 'nickname': 'Xyp9x', + 'url': 'https://hltv.org/player/4954/xyp9x'}, + {'id': '7412', + 'name': "Lukas 'gla1ve' Rossander", + 'nickname': 'gla1ve', + 'url': 'https://hltv.org/player/7412/gla1ve'}, + {'id': '9078', + 'name': "Kristian 'k0nfig' Wienecke", + 'nickname': 'k0nfig', + 'url': 'https://hltv.org/player/9078/k0nfig'}, + {'id': '13300', + 'name': "Asger 'Farlig' Jensen", + 'nickname': 'Farlig', + 'url': 'https://hltv.org/player/13300/farlig'}, + {'id': '15165', + 'name': "Benjamin 'blameF' Bremer", + 'nickname': 'blameF', + 'url': 'https://hltv.org/player/15165/blamef'}] ``` ## `get_team_info` ```python ->>> hltv.get_team_info("6667") -{'team-name': b'FaZe', - 'current-lineup': [{'country': 'Sweden', - 'name': 'Olof Kajbjer', - 'nickname': 'olofmeister', - 'maps-played': 543}, - {'country': 'Norway', - 'name': 'Håvard Nygaard', - 'nickname': 'rain', - 'maps-played': 1044}, - {'country': 'Denmark', - 'name': 'Markus Kjærbye', - 'nickname': 'Kjaerbye', - 'maps-played': 59}, - {'country': 'Brazil', - 'name': 'Marcelo David', - 'nickname': 'coldzera', - 'maps-played': 233}, - {'country': 'Latvia', - 'name': 'Helvijs Saukants', - 'nickname': 'broky', - 'maps-played': 233}], - 'historical-players': [{'country': b'Poland', - 'name': 'Filip Kubski', - 'nickname': b'NEO', - 'maps-played': 45}, - {'country': b'Slovakia', - 'name': 'Ladislav Kovács', - 'nickname': b'GuardiaN', - 'maps-played': 484}, - {'country': b'Lithuania', - 'name': 'Aurimas Pipiras', - 'nickname': b'Bymas', - 'maps-played': 41}, - {'country': b'Denmark', - 'name': 'Finn Andersen', - 'nickname': b'karrigan', - 'maps-played': 548}, - {'country': b'Kazakhstan', - 'name': 'Dauren Kystaubayev', - 'nickname': b'AdreN', - 'maps-played': 65}, - {'country': b'Sweden', - 'name': 'Richard Landström', - 'nickname': b'Xizt', - 'maps-played': 59}, - {'country': b'Sweden', - 'name': 'Mikail Bill', - 'nickname': b'Maikelele', - 'maps-played': 25}, - {'country': b'Portugal', - 'name': 'Ricardo Pacheco', - 'nickname': b'fox', - 'maps-played': 88}, - {'country': b'Finland', - 'name': 'Aleksi Jalli', - 'nickname': b'allu', - 'maps-played': 237}, - {'country': b'Norway', - 'name': 'Joakim Myrbostad', - 'nickname': b'jkaem', - 'maps-played': 180}, - {'country': b'Norway', - 'name': 'Jorgen Robertsen', - 'nickname': b'cromen', - 'maps-played': 27}, - {'country': b'Bosnia and Herzegovina', - 'name': 'Nikola Kovač', - 'nickname': b'NiKo', - 'maps-played': 799}, - {'country': b'Denmark', - 'name': 'Philip Aistrup', - 'nickname': b'aizy', - 'maps-played': 218}, - {'country': b'France', - 'name': 'Fabien Fiey', - 'nickname': b'kioShiMa', - 'maps-played': 280}, - {'country': b'Sweden', - 'name': 'Robert Dahlström', - 'nickname': b'RobbaN', - 'maps-played': 2}, - {'country': b'Australia', - 'name': 'Karlo Pivac', - 'nickname': b'USTILO', - 'maps-played': 1}, - {'country': b'Denmark', - 'name': 'Jesper Plougmann', - 'nickname': b'TENZKI', - 'maps-played': 2}, - {'country': b'Serbia', - 'name': 'Janko Paunović', - 'nickname': b'YNk', - 'maps-played': 8}, - {'country': b'Sweden', - 'name': 'Zebastian Molinder', - 'nickname': b'zbM', - 'maps-played': 1}], - 'stats': {b'Maps played': b'1044', - b'Wins / draws / losses': b'593 / 5 / 446', - b'Total kills': b'94441', - b'Total deaths': b'89842', - b'Rounds played': b'27494', - b'K/D Ratio': b'1.05'}} +>>> hltv.get_team_info("6665") +{'current-lineup': [{'country': 'Denmark', + 'maps-played': 1239, + 'name': 'Andreas Højsleth', + 'nickname': 'Xyp9x', + 'url': 'https://hltv.org/stats/players/4954/xyp9x'}, + {'country': 'Denmark', + 'maps-played': 1094, + 'name': 'Lukas Rossander', + 'nickname': 'gla1ve', + 'url': 'https://hltv.org/stats/players/7412/gla1ve'}, + {'country': 'Denmark', + 'maps-played': 139, + 'name': 'Kristian Wienecke', + 'nickname': 'k0nfig', + 'url': 'https://hltv.org/stats/players/9078/k0nfig'}, + {'country': 'Denmark', + 'maps-played': 82, + 'name': 'Asger Jensen', + 'nickname': 'Farlig', + 'url': 'https://hltv.org/stats/players/13300/farlig'}, + {'country': 'Denmark', + 'maps-played': 139, + 'name': 'Benjamin Bremer', + 'nickname': 'blameF', + 'url': 'https://hltv.org/stats/players/15165/blamef'}], + 'historical-players': [{'country': 'Denmark', + 'maps-played': 86, + 'name': 'Lucas Andersen', + 'nickname': 'Bubzkji', + 'url': 'https://hltv.org/stats/players/9612/bubzkji'}, + {'country': 'Denmark', + 'maps-played': 86, + 'name': 'Lucas Andersen', + 'nickname': 'Bubzkji', + 'url': 'https://hltv.org/stats/players/9612/bubzkji'}, + {'country': 'Denmark', + 'maps-played': 1076, + 'name': 'Nicolai Reedtz', + 'nickname': 'device', + 'url': 'https://hltv.org/stats/players/7592/device'}, + {'country': 'Denmark', + 'maps-played': 1179, + 'name': 'Peter Rasmussen', + 'nickname': 'dupreeh', + 'url': 'https://hltv.org/stats/players/7398/dupreeh'}, + {'country': 'Denmark', + 'maps-played': 53, + 'name': 'Patrick Hansen', + 'nickname': 'es3tag', + 'url': 'https://hltv.org/stats/players/8611/es3tag'}, + {'country': 'Denmark', + 'maps-played': 185, + 'name': 'Finn Andersen', + 'nickname': 'karrigan', + 'url': 'https://hltv.org/stats/players/429/karrigan'}, + {'country': 'Denmark', + 'maps-played': 355, + 'name': 'Markus Kjærbye', + 'nickname': 'Kjaerbye', + 'url': 'https://hltv.org/stats/players/8394/kjaerbye'}, + {'country': 'Denmark', + 'maps-played': 732, + 'name': 'Emil Reif', + 'nickname': 'Magisk', + 'url': 'https://hltv.org/stats/players/9032/magisk'}, + {'country': 'Denmark', + 'maps-played': 12, + 'name': 'Danny Sørensen', + 'nickname': 'zonic', + 'url': 'https://hltv.org/stats/players/21/zonic'}, + {'country': 'Denmark', + 'maps-played': 90, + 'name': 'René Borg', + 'nickname': 'cajunb', + 'url': 'https://hltv.org/stats/players/2469/cajunb'}, + {'country': 'Denmark', + 'maps-played': 103, + 'name': 'Philip Ewald', + 'nickname': 'Lucky', + 'url': 'https://hltv.org/stats/players/13843/lucky'}, + {'country': 'Norway', + 'maps-played': 10, + 'name': 'Ruben Villarroel', + 'nickname': 'RUBINO', + 'url': 'https://hltv.org/stats/players/1485/rubino'}, + {'country': 'Denmark', + 'maps-played': 1, + 'name': 'Frederik Sørensen', + 'nickname': 'Fessor', + 'url': 'https://hltv.org/stats/players/16718/fessor'}, + {'country': 'Denmark', + 'maps-played': 4, + 'name': 'Anton Pedersen', + 'nickname': 'notaN', + 'url': 'https://hltv.org/stats/players/9903/notan'}, + {'country': 'Denmark', + 'maps-played': 15, + 'name': 'Jakob Hansen', + 'nickname': 'JUGi', + 'url': 'https://hltv.org/stats/players/8783/jugi'}, + {'country': 'Denmark', + 'maps-played': 4, + 'name': 'Jacob Winneche', + 'nickname': 'Pimp', + 'url': 'https://hltv.org/stats/players/7154/pimp'}, + {'country': 'Denmark', + 'maps-played': 9, + 'name': 'Marco Pfeiffer', + 'nickname': 'Snappi', + 'url': 'https://hltv.org/stats/players/922/snappi'}, + {'country': 'Sweden', + 'maps-played': 8, + 'name': 'Dennis Edman', + 'nickname': 'dennis', + 'url': 'https://hltv.org/stats/players/1146/dennis'}], + 'stats': {'K/D Ratio': '1.10', + 'Maps played': '1323', + 'Rounds played': '34752', + 'Total deaths': '110203', + 'Total kills': '120679', + 'Wins / draws / losses': '860 / 2 / 461'}, + 'team-name': 'Astralis', + 'url': 'https://hltv.org/stats/team/6665/Astralis'} ``` -## `get_match_info` -```python ->>> get_match_info("77841") -{'team1': {'name': 'Astralis', - 'players': ['device', 'Magisk', 'Xyp9x', 'dupreeh', 'gla1ve'], - 'device': {'kills': '67', - 'headshots': '23', - 'assists': '17', - 'flash_assists': '7', - 'deaths': '61', - 'kast': '71.9%', - 'kd_diff': '+6', - 'adr': '84.8', - 'fk_diff': '+7', - 'rating': '1.17'}, - 'Magisk': {'kills': '59', - 'headshots': '25', - 'assists': '12', - 'flash_assists': '3', - 'deaths': '64', - 'kast': '68.5%', - 'kd_diff': '-5', - 'adr': '77.3', - 'fk_diff': '+4', - 'rating': '1.03'}, - 'Xyp9x': {'kills': '58', - 'headshots': '24', - 'assists': '22', - 'flash_assists': '8', - 'deaths': '58', - 'kast': '69.7%', - 'kd_diff': '0', - 'adr': '72.6', - 'fk_diff': '+1', - 'rating': '1.02'}, - 'dupreeh': {'kills': '56', - 'headshots': '33', - 'assists': '15', - 'flash_assists': '2', - 'deaths': '61', - 'kast': '66.3%', - 'kd_diff': '-5', - 'adr': '59.7', - 'fk_diff': '+1', - 'rating': '0.94'}, - 'gla1ve': {'kills': '45', - 'headshots': '19', - 'assists': '22', - 'flash_assists': '9', - 'deaths': '65', - 'kast': '60.7%', - 'kd_diff': '-20', - 'adr': '62.5', - 'fk_diff': '-8', - 'rating': '0.79'}}, - 'team2': {'name': 'G2', - 'players': ['NiKo', 'huNter-', 'AmaNEk', 'nexa', 'kennyS'], - 'NiKo': {'kills': '67', - 'headshots': '23', - 'assists': '17', - 'flash_assists': '7', - 'deaths': '61', - 'kast': '71.9%', - 'kd_diff': '+6', - 'adr': '84.8', - 'fk_diff': '+7', - 'rating': '1.17'}, - 'huNter-': {'kills': '59', - 'headshots': '25', - 'assists': '12', - 'flash_assists': '3', - 'deaths': '64', - 'kast': '68.5%', - 'kd_diff': '-5', - 'adr': '77.3', - 'fk_diff': '+4', - 'rating': '1.03'}, - 'AmaNEk': {'kills': '58', - 'headshots': '24', - 'assists': '22', - 'flash_assists': '8', - 'deaths': '58', - 'kast': '69.7%', - 'kd_diff': '0', - 'adr': '72.6', - 'fk_diff': '+1', - 'rating': '1.02'}, - 'nexa': {'kills': '56', - 'headshots': '33', - 'assists': '15', - 'flash_assists': '2', - 'deaths': '61', - 'kast': '66.3%', - 'kd_diff': '-5', - 'adr': '59.7', - 'fk_diff': '+1', - 'rating': '0.94'}, - 'kennyS': {'kills': '45', - 'headshots': '19', - 'assists': '22', - 'flash_assists': '9', - 'deaths': '65', - 'kast': '60.7%', - 'kd_diff': '-20', - 'adr': '62.5', - 'fk_diff': '-8', - 'rating': '0.79'}}} -``` - - ## `get_matches` ```python >>> hltv.get_matches() -[{'date': '2022-06-06', - 'event': b'WePlay Academy League Season 4', - 'team1': b'Astralis Talent', - 'team2': b'Apeks Rebels', - 'time': '18:10', - 'url': 'https://hltv.org/matches/2356500/astralis-talent-vs-apeks-rebels-weplay-academy-league-season-4'}, +[{'countdown': '1:15:00', + 'date': '2022-07-14', + 'event': 'ESL Challenger Melbourne 2022 Asia Closed Qualifier', + 'team1': 'IHC', + 'team2': 'Wings Up', + 'time': '15:00', + 'url': 'https://hltv.org/matches/2357388/ihc-vs-wings-up-esl-challenger-melbourne-2022-asia-closed-qualifier'}, ... ] ``` @@ -313,19 +231,29 @@ Provides an API for HLTV ```python >>> hltv.get_results() -[{'date': '10/11/2020', - 'event': b'IEM Beijing-Haidian 2020 North America', - 'team1': b'Liquid', - 'team1score': 2, - 'team2': b'Chaos', - 'team2score': 0}, +[{'date': '2022-07-14', + 'event': 'ESL Challenger Melbourne 2022 Asia Closed Qualifier', + 'team1': 'YK', + 'team1score': 0, + 'team2': 'Wings Up', + 'team2score': 2, + 'url': 'https://hltv.org/matches/2357387/yk-vs-wings-up-esl-challenger-melbourne-2022-asia-closed-qualifier'}, ... -}] +] ``` ## `get_results_by_date` ```python >>> hltv.get_results_by_date() -[{'team2score': 16, 'team1': 'AGO', 'team2': 'G2', 'team1score': 8, 'map': 'Inferno', 'date': '2018-2-15', 'event': 'ESL Pro League Season 7 Europe'}, ... ] +[{'date': '2022-07-14', + 'event': 'ESL Challenger Melbourne 2022 Asia Closed Qualifier', + 'map': 'Overpass', + 'team1': 'Wings Up', + 'team1score': 16, + 'team2': 'YK', + 'team2score': 8, + 'url': 'https://hltv.org/stats/matches/mapstatsid/140750/wings-up-vs-yk?startDate=2022-07-14&endDate=2022-07-14'}, + ... +] ```