mirror of
https://github.com/nprasad2077/nbaStats.git
synced 2026-11-05 01:25:48 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0b1814369b | ||
|
|
39535055a5 | ||
|
|
3ced0d278b | ||
|
|
5eaa50f4e7 | ||
|
|
4b1d07353d | ||
|
|
0701ef19d2 | ||
|
|
3558b1c154 |
No files matched your search
@@ -8,29 +8,27 @@ This documentation provides the necessary information to use the NBA Stats API.
|
||||
|
||||
# [View API Documentation](https://documenter.getpostman.com/view/24232555/2s93shzpR3)
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
### Base URL
|
||||
|
||||
All URLs referenced in this documentation use the following base URL:
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/
|
||||
> <https://nba-stats-db.herokuapp.com/>
|
||||
|
||||
### Endpoints
|
||||
|
||||
Top 20 Scorers by Season
|
||||
Method: `Get`
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/api/playerdata/topscorers/total/season/2023/
|
||||
> <https://nba-stats-db.herokuapp.com/api/playerdata/topscorers/total/season/2023/>
|
||||
|
||||
Success Response:
|
||||
|
||||
`Code: 200`
|
||||
|
||||
Content:
|
||||
|
||||
```
|
||||
{
|
||||
"count": 20,
|
||||
@@ -101,22 +99,23 @@ Content:
|
||||
"team": "PHI",
|
||||
"season": 2023
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
Top 20 Scorers in Playoffs
|
||||
Method: `Get`
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/api/playerdata/topscorers/playoffs/2022/
|
||||
> <https://nba-stats-db.herokuapp.com/api/playerdata/topscorers/playoffs/2022/>
|
||||
|
||||
Success Response:
|
||||
|
||||
`Code: 200`
|
||||
|
||||
Content:
|
||||
|
||||
```
|
||||
{
|
||||
"count": 20,
|
||||
@@ -187,22 +186,23 @@ Content:
|
||||
"team": "GSW",
|
||||
"season": 2022
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
Top 20 Assists by Season
|
||||
Method: `Get`
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/api/top_assists/totals/2023/
|
||||
> <https://nba-stats-db.herokuapp.com/api/top_assists/totals/2023/>
|
||||
|
||||
Success Response:
|
||||
|
||||
`Code: 200`
|
||||
|
||||
Content:
|
||||
|
||||
```
|
||||
{
|
||||
"count": 20,
|
||||
@@ -273,23 +273,23 @@ Content:
|
||||
"team": "DEN",
|
||||
"season": 2023
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
Top 20 Assists in Playoffs
|
||||
Method: `Get`
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/api/top_assists/playoffs/2022/
|
||||
|
||||
> <https://nba-stats-db.herokuapp.com/api/top_assists/playoffs/2022/>
|
||||
|
||||
Success Response:
|
||||
|
||||
`Code: 200`
|
||||
|
||||
Content:
|
||||
|
||||
```
|
||||
{
|
||||
"count": 20,
|
||||
@@ -360,22 +360,23 @@ Content:
|
||||
"team": "GSW",
|
||||
"season": 2022
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
Top 20 Rebounders (Total Rebounds) by Season
|
||||
Method: `Get`
|
||||
|
||||
> https://nba-stats-db.herokuapp.com/api/top_rebounds/totals/2023/
|
||||
> <https://nba-stats-db.herokuapp.com/api/top_rebounds/totals/2023/>
|
||||
|
||||
Success Response:
|
||||
|
||||
`Code: 200`
|
||||
|
||||
Content:
|
||||
|
||||
```
|
||||
{
|
||||
"count": 20,
|
||||
@@ -446,9 +447,9 @@ Content:
|
||||
"team": "CHI",
|
||||
"season": 2023
|
||||
},
|
||||
...
|
||||
]
|
||||
}
|
||||
...
|
||||
]
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
teams_data = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOK', 'DAL', 'SAS', 'DEN', 'MIN', 'SEA', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
@@ -0,0 +1,18 @@
|
||||
from django.core.management.base import BaseCommand
|
||||
from nba_data.models import PlayerAdvancedData
|
||||
from django.db import connection
|
||||
|
||||
class Command(BaseCommand):
|
||||
# Provides a description for use with the custom django management command (python manage.py help).
|
||||
help = 'Delete all player ADVANCED data with season specified and reset primary key sequence in DB'
|
||||
|
||||
def handle(self, *args, **options):
|
||||
# Delete player data with season
|
||||
season = 2006
|
||||
PlayerAdvancedData.objects.filter(season=season).delete()
|
||||
|
||||
# Reset the PK sequence
|
||||
with connection.cursor() as cursor:
|
||||
cursor.execute('ALTER SEQUENCE nba_data_playeradvanceddata_id_seq RESTART WITH 1;')
|
||||
|
||||
self.stdout.write(self.style.SUCCESS('Successfully deleted all players with season = {} in DB'.format(season)))
|
||||
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 4.2 on 2023-09-20 07:36
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('nba_data', '0017_alter_playershotchartdata_result'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='playeradvanceddata',
|
||||
name='ft_attempt_rate',
|
||||
field=models.DecimalField(decimal_places=3, max_digits=8, null=True),
|
||||
),
|
||||
]
|
||||
+1
-1
@@ -79,7 +79,7 @@ class PlayerAdvancedData(models.Model):
|
||||
PER = models.DecimalField(max_digits=6, decimal_places=1, null=True)
|
||||
TS_percent = models.DecimalField(max_digits=5, decimal_places=3, null=True)
|
||||
three_p_attempt_rate = models.DecimalField(max_digits=5, decimal_places=3, null=True)
|
||||
ft_attempt_rate = models.DecimalField(max_digits=5, decimal_places=3, null=True)
|
||||
ft_attempt_rate = models.DecimalField(max_digits=8, decimal_places=3, null=True)
|
||||
orb_percent = models.DecimalField(max_digits=5, decimal_places=2, null=True)
|
||||
drb_percent = models.DecimalField(max_digits=5, decimal_places=2, null=True)
|
||||
trb_percent = models.DecimalField(max_digits=5, decimal_places=2, null=True)
|
||||
|
||||
@@ -6,6 +6,7 @@ from bs4 import BeautifulSoup
|
||||
import csv
|
||||
import json
|
||||
import time
|
||||
from data import teams_data
|
||||
|
||||
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
@@ -27,10 +28,11 @@ from nba_data.models import PlayerAdvancedData
|
||||
# Change MEM to VAN for 2001 and prior.
|
||||
# Change LAC to SDC for 1984 and prior.
|
||||
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'OKC', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'SEA', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
season = input('What season? ')
|
||||
|
||||
for team in teams:
|
||||
for team in teams_data:
|
||||
url_make = 'https://www.basketball-reference.com/teams/' + team + '/' + season + '.html'
|
||||
response = requests.get(url_make)
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ from bs4 import BeautifulSoup
|
||||
import csv
|
||||
import json
|
||||
import time
|
||||
from data import teams_data
|
||||
|
||||
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
@@ -29,13 +30,11 @@ from nba_data.models import PlayerPlayoffAdvancedData
|
||||
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'OKC', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
teams2 = ['HOU' ,'PHI', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'SAS', 'DEN', 'MIN', 'OKC', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
team_abbreviations = ['ATL', 'BOS', 'BRK', 'CHI', 'CHO', 'CLE', 'DAL', 'DEN', 'DET', 'GSW', 'HOU', 'IND', 'LAC', 'LAL', 'MEM', 'MIA', 'MIL', 'MIN', 'NOP', 'NYK', 'OKC', 'ORL', 'PHI', 'PHO', 'POR', 'SAC', 'SAS', 'TOR', 'UTA', 'WAS']
|
||||
|
||||
season = input('What season? ')
|
||||
|
||||
for team in teams:
|
||||
teams2 = 'PHI'
|
||||
|
||||
for team in teams_data:
|
||||
url_make = 'https://www.basketball-reference.com/teams/' + team + '/' + season + '.html'
|
||||
response = requests.get(url_make)
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ from bs4 import BeautifulSoup
|
||||
import csv
|
||||
import json
|
||||
import time
|
||||
from data import teams_data
|
||||
|
||||
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
@@ -27,14 +28,11 @@ from nba_data.models import PlayerPlayoffTotalsData
|
||||
# Change LAC to SDC for 1984 and prior.
|
||||
|
||||
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'OKC', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
|
||||
team_abbreviations = ['ATL', 'BOS', 'BRK', 'CHI', 'CHO', 'CLE', 'DAL', 'DEN', 'DET', 'GSW', 'HOU', 'IND', 'LAC', 'LAL', 'MEM', 'MIA', 'MIL', 'MIN', 'NOP', 'NYK', 'OKC', 'ORL', 'PHI', 'PHO', 'POR', 'SAC', 'SAS', 'TOR', 'UTA', 'WAS']
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'SEA', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
season = input('What season? ')
|
||||
|
||||
for team in teams:
|
||||
for team in teams_data:
|
||||
url_make = 'https://www.basketball-reference.com/teams/' + team + '/' + season + '.html'
|
||||
response = requests.get(url_make)
|
||||
|
||||
|
||||
@@ -12,10 +12,11 @@ django.setup()
|
||||
|
||||
from nba_data.models import PlayerShotChartData
|
||||
|
||||
player_name = 'James Harden'
|
||||
season = 2010
|
||||
# team = 'LAL' # You might want to find a way to get this from the webpage
|
||||
url = 'https://www.basketball-reference.com/players/h/hardeja01/shooting/' + \
|
||||
player_name = 'Damian Lillard'
|
||||
season = 2013
|
||||
|
||||
# Player name and season will be inserted into DB. Modify before running script.
|
||||
url = 'https://www.basketball-reference.com/players/l/lillada01/shooting/' + \
|
||||
str(season)
|
||||
|
||||
response = requests.get(url)
|
||||
|
||||
@@ -6,6 +6,7 @@ from bs4 import BeautifulSoup
|
||||
import csv
|
||||
import json
|
||||
import time
|
||||
from data import teams_data
|
||||
|
||||
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
@@ -26,14 +27,14 @@ from nba_data.models import PlayerTotalsData
|
||||
# Change MEM to VAN for 2001 and prior.
|
||||
# Change LAC to SDC for 1984 and prior.
|
||||
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'OKC', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
teams = ['HOU' ,'PHI', 'BOS', 'NYK', 'NJN', 'TOR', 'MEM', 'NOH', 'DAL', 'SAS', 'DEN', 'MIN', 'SEA', 'UTA', 'POR', 'MIL', 'CLE', 'CHI', 'IND', 'DET', 'SAC', 'PHO', 'GSW', 'LAC', 'LAL', 'MIA', 'ATL', 'WAS', 'ORL', 'CHA']
|
||||
|
||||
|
||||
# team = input('What team? ')
|
||||
# OMIT above. Will now only ask for season and iterate thru teams list.
|
||||
season = input('What season? ')
|
||||
|
||||
for team in teams:
|
||||
for team in teams_data:
|
||||
url_make = 'https://www.basketball-reference.com/teams/' + team + '/' + season + '.html'
|
||||
response = requests.get(url_make)
|
||||
|
||||
|
||||
Reference in new issue
Block a user