Skip to content

Commit 7fb58a1

Browse files
authored
Merge pull request #84 from TheFinalJoke/move_sports
Moved Current Sports inside api-sports
2 parents c561351 + 0ae747e commit 7fb58a1

File tree

15 files changed

+277
-154
lines changed

15 files changed

+277
-154
lines changed
File renamed without changes.

lib/sports/apisports/apisports.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
from lib.sports.sportbase import SportBase
2+
from lib.sports.apisports.baseball.baseball import Baseball
3+
from lib.sports.apisports.basketball.basketball import Basketball
4+
from lib.sports.apisports.hockey.hockey import Hockey
5+
from lib.sports.apisports.football.football import Football
6+
import json
7+
import sys
8+
import os
9+
10+
class ApiSports(SportBase):
11+
def __init__(self, config):
12+
self.config = config
13+
self.sport = self.config['sport']
14+
try:
15+
if "sport_token" in self.config['basic']:
16+
self.token = self.config['basic'].get('sport_token')
17+
else:
18+
self.token = os.environ['SPORTTOKEN']
19+
except KeyError:
20+
self.logger.critical("No Sport Token")
21+
sys.exit("No Sport Token")
22+
self.headers = {'x-apisports-key': 'ebb2c44c416b9a9a0b538e2d73c7dbe6'}
23+
24+
async def run_api_sports(self):
25+
sport_data = {"Sport": {}}
26+
if 'football' == self.sport.get('sport').lower():
27+
self.logger.debug("Running football data")
28+
football = Football(self.token, self.config['sport'], self.headers)
29+
football_return = await football.run()
30+
sport_data['Sport'].update({'football': football_return})
31+
elif 'baseball' == self.sport.get('sport').lower():
32+
self.logger.debug('Running baseball data')
33+
baseball = Baseball(self.token, self.config['sport'], self.headers)
34+
sport_data = await baseball.run()
35+
elif 'basketball' == self.sport.get('sport').lower():
36+
self.logger.debug('Got basketball in config')
37+
basketball = Basketball(self.token, self.config['sport'], self.headers)
38+
basketball_return = await basketball.run()
39+
sport_data['Sport'].update({'basketball': basketball_return})
40+
elif 'hockey' == self.sport.get('sport').lower():
41+
self.logger.debug('Got Hockey from Config')
42+
hockey = Hockey(self.token, self.config['sport'], self.headers)
43+
sport_data = await hockey.run()
44+
return sport_data

lib/sports/baseball/baseball.py renamed to lib/sports/apisports/baseball/baseball.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from lib.run import Runner
22
from datetime import datetime
3+
from lib.sports.apisports.result import SportApiResult
34

45
class Baseball(Runner):
56
def __init__(self, token, config, headers):
@@ -33,4 +34,5 @@ async def run(self):
3334
api_data = {}
3435
for section, url in self.url_builder(parsed).items():
3536
api_data.update({section: await self.get_data(url, self.headers)})
36-
return api_data
37+
api_data['sport'] = 'baseball'
38+
return SportApiResult(api_data)

lib/sports/basketball/basketball.py renamed to lib/sports/apisports/basketball/basketball.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,5 @@ async def run(self):
3535
api_data = {}
3636
for section, url in self.url_builder(parsed).items():
3737
api_data.update({section: await self.get_data(url, self.headers)})
38+
api_data['sport'] = 'basketball'
3839
return api_data

lib/sports/apisports/football/__init__.py

Whitespace-only changes.
File renamed without changes.

lib/sports/apisports/hockey/__init__.py

Whitespace-only changes.

lib/sports/hockey/hockey.py renamed to lib/sports/apisports/hockey/hockey.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from lib.run import Runner
22
from datetime import datetime
3+
from lib.sports.apisports.result import SportApiResult
34

45
class Hockey(Runner):
56
def __init__(self, token, config, headers):
@@ -29,10 +30,11 @@ def url_builder(self, args):
2930
urls.update({'next_game': base + f"games?team={self.config.getint('team_id')}&league=57&season=2020&timezone=America/Chicago"})
3031
return urls
3132

32-
async def run(self):
33+
async def run(self) -> SportApiResult:
3334
self.logger.info('Running Hockey API')
3435
parsed = self.parse_args()
3536
api_data = {}
3637
for section, url in self.url_builder(parsed).items():
3738
api_data.update({section: await self.get_data(url, self.headers)})
38-
return api_data
39+
api_data['sport'] = 'hockey'
40+
return SportApiResult(api_data)

0 commit comments

Comments
 (0)