mirror of
https://github.com/SocksPls/hltv-api
synced 2025-04-30 15:43:07 +00:00
Reformat get_player_info func: statistics write same way as get_team_info func. README update
This commit is contained in:
parent
072a347abe
commit
4c00aecbcf
2 changed files with 9 additions and 22 deletions
|
@ -34,15 +34,15 @@ Provides an API for HLTV
|
||||||
## `get_player_info`
|
## `get_player_info`
|
||||||
|
|
||||||
```python
|
```python
|
||||||
>>> hltv.get_player_info("7398")
|
>>> hltv.get_player_info("3741")
|
||||||
{'id': 7398, 'nickname': b'dupreeh', 'name': b'Peter Rasmussen', 'country': 'Denmark', 'team': b'Astralis', 'age': 27, 'total_kills': '31385', 'headshot': '50.5%', 'total_deaths': '27456', 'kd_ratio': '1.14', 'dmg_round': '78.4', 'gren_dmg_round': '3.0', 'maps_played': '1635', 'rounds_played': '42363', 'kills_round': '0.74', 'assists_round': '0.14', 'deaths_round': '0.65', 'saved_by_teammate': '0.10', 'saved_teammates': '0.09', 'rating_1': '1.09'}
|
{'id': 3741, 'nickname': b'NiKo', 'name': b'Nikola Kova\xc4\x8d', 'country': 'Bosnia and Herzegovina', 'team': b'FaZe', 'age': 23, b'Total kills': b'26979', b'Headshot %': b'50.3%', b'Total deaths': b'22562', b'K/D Ratio': b'1.20', b'Damage / Round': b'85.6', b'Grenade dmg / Round': b'3.8', b'Maps played': b'1277', b'Rounds played': b'33693', b'Kills / round': b'0.80', b'Assists / round': b'0.13', b'Deaths / round': b'0.67', b'Saved by teammate / round': b'0.08', b'Saved teammates / round': b'0.10', b'Rating 1.0': b'1.16'}
|
||||||
```
|
```
|
||||||
|
|
||||||
## `get_team_info`
|
## `get_team_info`
|
||||||
|
|
||||||
```python
|
```python
|
||||||
>>> hltv.get_team_info("6667")
|
>>> hltv.get_team_info("6667")
|
||||||
{'stats': {'Maps played': '466', 'K/D Ratio': '1.06', 'Total deaths': '40328', 'Wins / draws / losses': '279 / 1 / 186', 'Total kills': '42711', 'Rounds played': '12212'}, 'current-lineup': [{'maps-played': 314, 'country': 'Denmark', 'nickname': 'karrigan', 'name': 'Finn Andersen'}, {'maps-played': 141, 'country': 'Sweden', 'nickname': 'olofmeister', 'name': 'Olof Kajbjer'}, {'maps-played': 141, 'country': 'Slovakia', 'nickname': 'GuardiaN', 'name': 'Ladislav Kov\xc3\xa1cs'}, {'maps-played': 237, 'country': 'Bosnia and Herzegovina', 'nickname': 'NiKo', 'name': 'Nikola Kova\xc4\x8d'}, {'maps-played': 466, 'country': 'Norway', 'nickname': 'rain', 'name': 'H\xc3\xa5vard Nygaard'}], 'team-name': 'FaZe', 'historical-players': [{'maps-played': 25, 'country': 'Sweden', 'nickname': 'Maikelele', 'name': 'Mikail Bill'}, {'maps-played': 88, 'country': 'Portugal', 'nickname': 'fox', 'name': 'Ricardo Pacheco'}, {'maps-played': 237, 'country': 'Finland', 'nickname': 'allu', 'name': 'Aleksi Jalli'}, {'maps-played': 180, 'country': 'Norway', 'nickname': 'jkaem', 'name': 'Joakim Myrbostad'}, {'maps-played': 218, 'country': 'Denmark', 'nickname': 'aizy', 'name': 'Philip Aistrup'}, {'maps-played': 280, 'country': 'France', 'nickname': 'kioShiMa', 'name': 'Fabien Fiey'}, {'maps-played': 2, 'country': 'Sweden', 'nickname': 'RobbaN', 'name': 'Robert Dahlstr\xc3\xb6m'}, {'maps-played': 2, 'country': 'Denmark', 'nickname': 'TENZKI', 'name': 'Jesper Plougmann'}, {'maps-played': 1, 'country': 'Sweden', 'nickname': 'zbM', 'name': 'Zebastian Molinder'}]}
|
{'team-name': b'FaZe', 'current-lineup': [{'country': 'Bosnia and Herzegovina', 'name': 'Nikola Kovač', 'nickname': 'NiKo', 'maps-played': 759, 'id': 3741}, {'country': 'Norway', 'name': 'Håvard Nygaard', 'nickname': 'rain', 'maps-played': 994, 'id': 8183}, {'country': 'Denmark', 'name': 'Markus Kjærbye', 'nickname': 'Kjaerbye', 'maps-played': 9, 'id': 8394}, {'country': 'Brazil', 'name': 'Marcelo David', 'nickname': 'coldzera', 'maps-played': 183, 'id': 9216}, {'country': 'Latvia', 'name': 'Helvijs Saukants', 'nickname': 'broky', 'maps-played': 183, 'id': 18053}], 'historical-players': [{'country': b'Poland', 'name': 'Filip Kubski', 'nickname': b'NEO', 'maps-played': 45, 'id': 165}, {'country': b'Slovakia', 'name': 'Ladislav Kovács', 'nickname': b'GuardiaN', 'maps-played': 484, 'id': 2757}, {'country': b'Lithuania', 'name': 'Aurimas Pipiras', 'nickname': b'Bymas', 'maps-played': 41, 'id': 19015}, {'country': b'Denmark', 'name': 'Finn Andersen', 'nickname': b'karrigan', 'maps-played': 548, 'id': 429}, {'country': b'Kazakhstan', 'name': 'Dauren Kystaubayev', 'nickname': b'AdreN', 'maps-played': 65, 'id': 334}, {'country': b'Sweden', 'name': 'Richard Landström', 'nickname': b'Xizt', 'maps-played': 59, 'id': 884}, {'country': b'Sweden', 'name': 'Mikail Bill', 'nickname': b'Maikelele', 'maps-played': 25, 'id': 1045}, {'country': b'Portugal', 'name': 'Ricardo Pacheco', 'nickname': b'fox', 'maps-played': 88, 'id': 629}, {'country': b'Sweden', 'name': 'Olof Kajbjer', 'nickname': b'olofmeister', 'maps-played': 533, 'id': 885}, {'country': b'Finland', 'name': 'Aleksi Jalli', 'nickname': b'allu', 'maps-played': 237, 'id': 695}, {'country': b'Norway', 'name': 'Joakim Myrbostad', 'nickname': b'jkaem', 'maps-played': 180, 'id': 8248}, {'country': b'Norway', 'name': 'Jorgen Robertsen', 'nickname': b'cromen', 'maps-played': 27, 'id': 10397}, {'country': b'Denmark', 'name': 'Philip Aistrup', 'nickname': b'aizy', 'maps-played': 218, 'id': 8095}, {'country': b'France', 'name': 'Fabien Fiey', 'nickname': b'kioShiMa', 'maps-played': 280, 'id': 4959}, {'country': b'Sweden', 'name': 'Robert Dahlström', 'nickname': b'RobbaN', 'maps-played': 2, 'id': 2}, {'country': b'Australia', 'name': 'Karlo Pivac', 'nickname': b'USTILO', 'maps-played': 1, 'id': 8771}, {'country': b'Denmark', 'name': 'Jesper Plougmann', 'nickname': b'TENZKI', 'maps-played': 2, 'id': 5287}, {'country': b'Serbia', 'name': 'Janko Paunović', 'nickname': b'YNk', 'maps-played': 8, 'id': 2482}, {'country': b'Sweden', 'name': 'Zebastian Molinder', 'nickname': b'zbM', 'maps-played': 1, 'id': 10748}], 'stats': {b'Maps played': b'994', b'Wins / draws / losses': b'567 / 5 / 422', b'Total kills': b'89743', b'Total deaths': b'85251', b'Rounds played': b'26101', b'K/D Ratio': b'1.05'}}
|
||||||
```
|
```
|
||||||
|
|
||||||
## `get_matches`
|
## `get_matches`
|
||||||
|
|
25
main.py
25
main.py
|
@ -110,23 +110,10 @@ def get_player_info(playerid):
|
||||||
else:
|
else:
|
||||||
player_info['age'] = int(age[:2])
|
player_info['age'] = int(age[:2])
|
||||||
|
|
||||||
try:
|
for stat in statistics:
|
||||||
player_info['total_kills'] = statistics[0].find_all("span")[1].text
|
stat_value = stat.find_all("span")[1].text.encode('utf8')
|
||||||
player_info['headshot'] = statistics[1].find_all("span")[1].text
|
stat_title = stat.find_all("span")[0].text.encode('utf8')
|
||||||
player_info['total_deaths'] = statistics[2].find_all("span")[1].text
|
player_info[stat_title] = stat_value
|
||||||
player_info['kd_ratio'] = statistics[3].find_all("span")[1].text
|
|
||||||
player_info['dmg_round'] = statistics[4].find_all("span")[1].text
|
|
||||||
player_info['gren_dmg_round'] = statistics[5].find_all("span")[1].text
|
|
||||||
player_info['maps_played'] = statistics[6].find_all("span")[1].text
|
|
||||||
player_info['rounds_played'] = statistics[7].find_all("span")[1].text
|
|
||||||
player_info['kills_round'] = statistics[8].find_all("span")[1].text
|
|
||||||
player_info['assists_round'] = statistics[9].find_all("span")[1].text
|
|
||||||
player_info['deaths_round'] = statistics[10].find_all("span")[1].text
|
|
||||||
player_info['saved_by_teammate'] = statistics[11].find_all("span")[1].text
|
|
||||||
player_info['saved_teammates'] = statistics[12].find_all("span")[1].text
|
|
||||||
player_info['rating_1'] = statistics[13].find_all("span")[1].text
|
|
||||||
except IndexError:
|
|
||||||
return None
|
|
||||||
|
|
||||||
return player_info
|
return player_info
|
||||||
|
|
||||||
|
@ -180,7 +167,7 @@ def _get_current_lineup(player_anchors):
|
||||||
player['name'] = buildName[0].rstrip() + buildName[2]
|
player['name'] = buildName[0].rstrip() + buildName[2]
|
||||||
player['nickname'] = player_anchor.find("div", {"class": "teammate-info standard-box"}).find("div", {"class": "text-ellipsis"}).text
|
player['nickname'] = player_anchor.find("div", {"class": "teammate-info standard-box"}).find("div", {"class": "text-ellipsis"}).text
|
||||||
player['maps-played'] = int(re.search(r'\d+', player_anchor.find("div", {"class": "teammate-info standard-box"}).find("span").text).group())
|
player['maps-played'] = int(re.search(r'\d+', player_anchor.find("div", {"class": "teammate-info standard-box"}).find("span").text).group())
|
||||||
player['id'] = re.search(pattern, player_link).group(1)
|
player['id'] = int(re.search(pattern, player_link).group(1))
|
||||||
players.append(player)
|
players.append(player)
|
||||||
return players
|
return players
|
||||||
|
|
||||||
|
@ -199,7 +186,7 @@ def _get_historical_lineup(player_anchors):
|
||||||
player['name'] = buildName[0].rstrip() + buildName[2]
|
player['name'] = buildName[0].rstrip() + buildName[2]
|
||||||
player['nickname'] = player_anchor.find("div", {"class": "teammate-info standard-box"}).find("div", {"class": "text-ellipsis"}).text.encode('utf8')
|
player['nickname'] = player_anchor.find("div", {"class": "teammate-info standard-box"}).find("div", {"class": "text-ellipsis"}).text.encode('utf8')
|
||||||
player['maps-played'] = int(re.search(r'\d+', player_anchor.find("div", {"class": "teammate-info standard-box"}).find("span").text).group())
|
player['maps-played'] = int(re.search(r'\d+', player_anchor.find("div", {"class": "teammate-info standard-box"}).find("span").text).group())
|
||||||
player['id'] = re.search(pattern, player_link).group(1)
|
player['id'] = int(re.search(pattern, player_link).group(1))
|
||||||
players.append(player)
|
players.append(player)
|
||||||
return players
|
return players
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue