예제 #1
0
파일: help.py 프로젝트: jalgraves/jalbot
 def run_cmd(self, *args):
     """Run help command"""
     conf = get_config('help.json')
     response = conf["help"]
     if not self.option:
         response = self.config["help"]
     else:
         get_help = get_config(f'{self.option}.json')
         response = get_help["help"]
     return "\n".join(response)
예제 #2
0
파일: help.py 프로젝트: jalgraves/jalbot
 def __init__(self, event, user):
     self.config = get_config('help.json')
     try:
         self.option = event["text"].split()[1]
     except IndexError:
         self.option = False
     self.option = False
     self.user = event["user"]
예제 #3
0
파일: weather.py 프로젝트: jalgraves/jalbot
 def __init__(self, event, user):
     self.text = event['text']
     self.config = get_config('weather.json')
     self.parsed_args = SlackArgParse(self.config['valid_args'],
                                      self.config['options'], event['text'])
     self.args = self.parsed_args.args
     self.option = self.parsed_args.option
     self.response = self.run_cmd()
예제 #4
0
 def __init__(self, args, option, team=None, player=None):
     self.args = args
     self.option = option
     self.team = team
     self.player = player
     self.config = get_config('nhl_config.json')
     self.emojis = self.config['emojis']
     self.nhl = NHL()
예제 #5
0
파일: slack.py 프로젝트: jalgraves/jalbot
    def __init__(self, token):
        """
        Initialize the Slack object given the provided bot token

        :param token:
        :param config:
        """
        self.config = get_config('slack.json')
        self.client = slackclient.SlackClient(token)
        self.commands = self.load_commands('/jalbot/src/commands/')
예제 #6
0
 def __init__(self, event, user):
     self.text = event['text']
     self.api_key = os.environ.get('MYSPORTSFEEDS_API_KEY')
     self.config = get_config('sports.json')
     self.parsed_args = SlackArgParse(self.config['valid_args'], self.config['options'], event['text'])
     self.args = self.parsed_args.args
     self.option = self.parsed_args.option
     self.league = self._get_league()
     self.player = self._get_player()
     self.team_name = self._get_team_name()
     self.matchup = self._get_matchup()
     self.response = self.run_cmd()
예제 #7
0
 def __init__(self, event, user):
     self.api_key = os.environ.get('NYT_API_KEY')
     self.config = get_config('news.json')
     self.parsed_args = SlackArgParse(self.config['valid_args'],
                                      self.config['options'], event['text'])
     self.args = self.parsed_args.args
     self.option = self.parsed_args.option
     self.subject = self._get_subject()
     self.num_articles = self._get_num_articles()
     self.news = self._create_news_object()
     self.text = event['text']
     self.response = self.run_cmd()
예제 #8
0
파일: nfl.py 프로젝트: jalgraves/jalbot
 def __init__(self, api_version="1.2"):
     self.api_key = os.environ.get('MYSPORTSFEEDS_API_KEY')
     self.version = api_version
     self.password = os.environ.get('MYSPORTSFEEDS_PASSWORD')
     self.date = datetime.datetime.now()
     self.base_url = f"https://api.mysportsfeeds.com/v{self.version}/pull/nfl/"
     self.session = requests.session()
     self.league_schedule = self.get_schedule()
     self.upcoming_games = self.get_games_by_week()
     self.config = get_config('nfl_config.json')
     self.league_game_results = []
     self.played_games = []
     self.unplayed_games = []
     self.league_played_games = []
     self.league_unplayed_games = []
     self.loop = asyncio.new_event_loop()
     self.loop.run_until_complete(self.parse_league_games())
     self.loop.run_until_complete(self.gather_league_data())
예제 #9
0
    def __init__(self, team=None, player=None):
        logging.info("NFL GAMES")
        self.date = datetime.datetime.now()
        self.base_url = 'https://api.mysportsfeeds.com/v1.2/pull/nfl/'
        self.session = requests.session()
        self.league_schedule = self.nfl_schedule()
        self.upcoming_games = self.get_games_by_week()
        self.nfl_config = get_config('nfl_config.json')
        self.league_game_results = []
        self.recent_league_games = self.get_most_recent_games()
        self.loop = asyncio.new_event_loop()
        self.loop.run_until_complete(self.gather_league_game_results())

        if team:
            self.team_abbreviation = self.nfl_config['abbreviations'].get(team)
            self.team_schedule = self.get_team_schedule(self.team_abbreviation)
            self.loop.run_until_complete(self.schedule_parser())
            self.team_game_results = []
            self.team_stats = self.get_team_stats(self.team_abbreviation)
            self.loop.run_until_complete(self.gather_team_game_results())
            self.loop.close()
예제 #10
0
파일: nba.py 프로젝트: jalgraves/jalbot
import requests

from collections import namedtuple
from datetime import timedelta
from pytz import timezone
from pymemcache.client.base import Client
from requests.packages.urllib3.exceptions import InsecureRequestWarning

from utils.BotTools import get_config
from utils.exceptions import NBAException

requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

BASE_URL = 'https://stats.nba.com/stats/'

CONFIG = get_config('nba.json')


def json_serializer(key, value):
    if type(value) == str:
        return value, 1
    return json.dumps(value), 2


def json_deserializer(key, value, flags):
    if flags == 1:
        return value.decode('utf-8')
    if flags == 2:
        return json.loads(value.decode('utf-8'))
    raise Exception("Unknown serialization format")
예제 #11
0
 def __init__(self, args, option, team=None, player=None):
     self.args = args
     self.option = option
     self.team = team
     self.player = player
     self.config = get_config('nba.json')
예제 #12
0
    def setUp(self):
        self.config = get_config('sports.json')

        self.cmd_args = self.config['valid_args']
        self.options = self.config['options']
        self.nhl_text = 'sports standings -l nhl --conference'
예제 #13
0
파일: mlb.py 프로젝트: jalgraves/jalbot
import json
import logging
import requests

from datetime import timedelta
from pytz import timezone
from requests.packages.urllib3.exceptions import InsecureRequestWarning

from utils.BotTools import get_config
from utils.exceptions import MLBException

requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

BASE_URL = 'https://statsapi.mlb.com/api/v1/'

CONFIG = get_config('mlb.json')


class MLB:
    def __init__(self):
        self.current_season = datetime.datetime.strftime(self.date, "%Y")
        pass


class MLBStandings(MLB):
    def __init__(self):
        super().__init__()
        self.overall = self._get_overall_standings()
        self.american_league = self._get_league_standings('american')
        self.national_league = self._get_league_standings('national')
        self.al_east = self._get_division_standings('american', 'east')