Skip to main content

DFS Wrapper to easily access DFS Books API

Project description

DFS Wrapper

A simple Python wrapper for DFS Books API to fetch player stats, leagues, and other game data.

Installation

Install the package directly from PyPI: pip install api-dfs-wrapper

Usage

Import PrizePick wrapper

from DFS_Wrapper import PrizePick

Import Underdog Wrapper

from DFS_Wrapper import Underdog

Initialize PrizePick wrapper

prizepick = PrizePick()

Initialize Underdog wrapper

underdog = Underdog()

Get PrizePick data

pp_data = prizepick.get_data()

Get Underdog data

ud_data = underdog.get_data()

Get PrizePick Leagues

pp_leagues = prizepick.get_leagues()

Get Underdog Leagues

ud_leagues = underdog.get_leagues()

Methods

get_data(organize_data): Fetches PrizePick data. If organize_data is set to true, this will return a dictionary of leagues with key being the league name. organize_data is defaulted to true. If organize_data is false, will return a list of all data, non-organized.

get_leagues(): Returns a dictionary of leagues with their IDs. [PrizePick Only]

get_leagues(): Returns a set of leagues [Underdog Only]

Example JSON Return for Prizepicks [Non-Organized]

[
    {
        "player_id": "225032",
        "player_name": "Danielle Hunter",
        "is_live": false,
        "league": "NFL1H",
        "league_id": "35",
        "odds_type": "standard",
        "stat_type": "Sacks",
        "status": "pre_game",
        "team": "HOU",
        "opponent": "KC",
        "line_score": 0.13,
        "start_time": "2025-01-18T16:30:00-05:00"
    },
    {
        "player_id": "211159",
        "player_name": "Ka'imi Fairbairn",
        "is_live": false,
        "league": "NFL",
        "league_id": "9",
        "odds_type": "demon",
        "stat_type": "FG Made",
        "status": "pre_game",
        "team": "HOU",
        "opponent": "KC",
        "line_score": 2.5,
        "start_time": "2025-01-18T16:30:00-05:00"
    }
]

Example JSON Return for Underdog [Non-Organized]

[
    {
        "player_name": "LaMelo Ball",
        "player_id": "b78ba991-272a-438e-81d6-901d66c7e09a",
        "sport_id": "NBA",
        "match_id": 85801,
        "match_type": "Game",
        "team_id": "11cfe154-8ba6-4c22-be8f-2365656fb4da",
        "stat_id": "872f2308-db67-41e8-95f0-1c20d4061b1b",
        "team": "CHA",
        "opponent": "CHI",
        "stats": [
            {
                "stat_type": "Points",
                "line_value": 30.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Pts + Rebs + Asts",
                "line_value": 45.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "1Q Points",
                "line_value": 7.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Assists",
                "line_value": 8.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Rebounds",
                "line_value": 5.5,
                "over_multiplier": 0.92,
                "under_multiplier": 1.07
            },
            {
                "stat_type": "1Q Pts + Rebs + Asts",
                "line_value": 12.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Pts+Reb+Ast in First 5 Min.",
                "line_value": 6.5,
                "over_multiplier": 1.04,
                "under_multiplier": 0.93
            },
            {
                "stat_type": "Points in First 5 Min.",
                "line_value": 4.5,
                "over_multiplier": 1.07,
                "under_multiplier": 0.91
            },
            {
                "stat_type": "Rebounds + Assists",
                "line_value": 14.5,
                "over_multiplier": 1.04,
                "under_multiplier": 0.94
            },
            {
                "stat_type": "1Q Rebounds",
                "line_value": 1.5,
                "over_multiplier": 1.05,
                "under_multiplier": 0.93
            },
            {
                "stat_type": "3-Pointers Made",
                "line_value": 4.5,
                "over_multiplier": 0.87,
                "under_multiplier": 1.12
            },
            {
                "stat_type": "1Q Assists",
                "line_value": 2.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Points + Rebounds",
                "line_value": 36.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Assists in First 5 min.",
                "line_value": 1.5,
                "over_multiplier": 1.62,
                "under_multiplier": 0.69
            },
            {
                "stat_type": "Points + Assists",
                "line_value": 39.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Double Doubles",
                "line_value": 0.5,
                "over_multiplier": 1.15,
                "under_multiplier": 0.85
            },
            {
                "stat_type": "1Q 3-Pointers Made",
                "line_value": 0.5,
                "over_multiplier": null,
                "under_multiplier": 2.14
            },
            {
                "stat_type": "Steals",
                "line_value": 1.5,
                "over_multiplier": 1.16,
                "under_multiplier": 0.83
            },
            {
                "stat_type": "1H Pts + Rebs + Asts",
                "line_value": 23.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "1H Assists",
                "line_value": 4.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "1H Points",
                "line_value": 16.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "1H 3-Pointers Made",
                "line_value": 2.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Fantasy Points",
                "line_value": 52.45,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "FT Made",
                "line_value": 5.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            },
            {
                "stat_type": "Turnovers",
                "line_value": 3.5,
                "over_multiplier": 1,
                "under_multiplier": 1
            }
        ]
    },
]

Example JSON Return for Prizepicks [Organized]

{
 "NFL": [
        {
            "player_id": "224099",
            "player_name": "Will Anderson",
            "team": "HOU",
            "opponent": "KC",
            "stats": [
                {
                    "stat_type": "Sacks",
                    "line_score": 0.25,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Sacks",
                    "line_score": 1.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                }
            ]
        },
        {
            "player_id": "206322",
            "player_name": "Joe Mixon",
            "team": "HOU",
            "opponent": "KC",
            "stats": [
                {
                    "stat_type": "Rush Yards",
                    "line_score": 54.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards in First 5 Attempts",
                    "line_score": 17.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Fantasy Score",
                    "line_score": 12.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec Yds",
                    "line_score": 77.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Attempts",
                    "line_score": 15.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Longest Reception",
                    "line_score": 9.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receiving Yards",
                    "line_score": 16.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec TDs",
                    "line_score": 0.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Longest Rush",
                    "line_score": 13.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receptions",
                    "line_score": 2.5,
                    "odds_type": "goblin",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receptions",
                    "line_score": 3.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receptions",
                    "line_score": 4.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rec Targets",
                    "line_score": 3.5,
                    "odds_type": "standard",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receiving Yards",
                    "line_score": 29.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 79.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Receiving Yards",
                    "line_score": 39.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec Yds",
                    "line_score": 109.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec Yds",
                    "line_score": 99.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec Yds",
                    "line_score": 59.5,
                    "odds_type": "goblin",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 89.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 74.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 69.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 39.5,
                    "odds_type": "goblin",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush Yards",
                    "line_score": 49.5,
                    "odds_type": "goblin",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                },
                {
                    "stat_type": "Rush+Rec Yds",
                    "line_score": 89.5,
                    "odds_type": "demon",
                    "start_time": "2025-01-18T16:30:00-05:00",
                    "status": "pre_game"
                }
            ]
        },
 }

Example JSON Return for Underdog [Organized]

{
    "NFL": [
        {
            "player_name": "Patrick Mahomes",
            "player_id": "f1766f00-503b-4b13-a5d1-cd4347423121",
            "team": "KC",
            "opponent": "HOU",
            "match_id": 104858,
            "match_type": "Game",
            "team_id": "a6f458f4-5078-56e4-a839-af96f1191314",
            "stat_id": "4c28ae8e-873c-45b0-a62d-1b737d630280",
            "stats": [
                {
                    "stat_type": "Passing Yards",
                    "line_value": 254.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Passing TDs",
                    "line_value": 1.5,
                    "over_multiplier": 0.77,
                    "under_multiplier": 1.32
                },
                {
                    "stat_type": "Rush + Rec TDs",
                    "line_value": 0.5,
                    "over_multiplier": 2.67,
                    "under_multiplier": null
                },
                {
                    "stat_type": "Pass + Rush Yards",
                    "line_value": 281.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Passing Attempts",
                    "line_value": 37.5,
                    "over_multiplier": 1.04,
                    "under_multiplier": 0.94
                },
                {
                    "stat_type": "Rushing Yards",
                    "line_value": 23.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Completions",
                    "line_value": 25.5,
                    "over_multiplier": 1.04,
                    "under_multiplier": 0.94
                },
                {
                    "stat_type": "Interceptions",
                    "line_value": 0.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Rushing Attempts",
                    "line_value": 4.5,
                    "over_multiplier": 1.06,
                    "under_multiplier": 0.93
                },
                {
                    "stat_type": "Longest Rush",
                    "line_value": 12.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Rushing Yards",
                    "line_value": 9.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Rush + Rec TD",
                    "line_value": 0.5,
                    "over_multiplier": 5.65,
                    "under_multiplier": null
                },
                {
                    "stat_type": "1Q Passing TDs",
                    "line_value": 0.5,
                    "over_multiplier": 1.36,
                    "under_multiplier": 0.76
                },
                {
                    "stat_type": "1Q Passing Yards",
                    "line_value": 58.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Passing Yards",
                    "line_value": 132.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Passing TDs",
                    "line_value": 0.5,
                    "over_multiplier": 0.75,
                    "under_multiplier": 1.38
                },
                {
                    "stat_type": "Team First TD Scorer",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 5.94
                },
                {
                    "stat_type": "Longest Completion",
                    "line_value": 35.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "First TD Scorer",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 11.59
                },
                {
                    "stat_type": "1Q Rushing Yards",
                    "line_value": 0.5,
                    "over_multiplier": 1.04,
                    "under_multiplier": 0.94
                },
                {
                    "stat_type": "1Q Rush + Rec TDs",
                    "line_value": 0.5,
                    "over_multiplier": 13.51,
                    "under_multiplier": null
                },
                {
                    "stat_type": "Fantasy Points",
                    "line_value": 20.55,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Sacks Taken",
                    "line_value": 2,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Fumbles Lost",
                    "line_value": 0.5,
                    "over_multiplier": 2.54,
                    "under_multiplier": null
                },
                {
                    "stat_type": "Game High Pass Yards",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 0.85
                },
                {
                    "stat_type": "Game High Rush Yards",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 6.22
                }
            ]
        },
        {
            "player_name": "C.J. Stroud",
            "player_id": "59614625-f243-4cb9-8038-146619f12e70",
            "team": "HOU",
            "opponent": "KC",
            "match_id": 104858,
            "match_type": "Game",
            "team_id": "4ab08caa-b79d-598e-82ef-0906a60d2a89",
            "stat_id": "b0778e0c-c05d-4b9f-b0db-8fc05e2ee855",
            "stats": [
                {
                    "stat_type": "Passing Yards",
                    "line_value": 225.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Passing TDs",
                    "line_value": 1.5,
                    "over_multiplier": 1.42,
                    "under_multiplier": 0.74
                },
                {
                    "stat_type": "Pass + Rush Yards",
                    "line_value": 243.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Rush + Rec TDs",
                    "line_value": 0.5,
                    "over_multiplier": 2.94,
                    "under_multiplier": null
                },
                {
                    "stat_type": "Passing Attempts",
                    "line_value": 34.5,
                    "over_multiplier": 0.94,
                    "under_multiplier": 1.04
                },
                {
                    "stat_type": "Completions",
                    "line_value": 20.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Rushing Yards",
                    "line_value": 15.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Rushing Attempts",
                    "line_value": 3.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Interceptions",
                    "line_value": 0.5,
                    "over_multiplier": 0.81,
                    "under_multiplier": 1.21
                },
                {
                    "stat_type": "1H Passing TDs",
                    "line_value": 0.5,
                    "over_multiplier": 1.11,
                    "under_multiplier": 0.88
                },
                {
                    "stat_type": "Longest Completion",
                    "line_value": 35.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Longest Rush",
                    "line_value": 8.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Rushing Yards",
                    "line_value": 5.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1Q Rushing Yards",
                    "line_value": 0.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Rush + Rec TD",
                    "line_value": 0.5,
                    "over_multiplier": 6.11,
                    "under_multiplier": null
                },
                {
                    "stat_type": "1Q Rush + Rec TDs",
                    "line_value": 0.5,
                    "over_multiplier": 13.24,
                    "under_multiplier": null
                },
                {
                    "stat_type": "1Q Passing TDs",
                    "line_value": 0.5,
                    "over_multiplier": 2.37,
                    "under_multiplier": null
                },
                {
                    "stat_type": "Fantasy Points",
                    "line_value": 15.65,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "First TD Scorer",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 12.29
                },
                {
                    "stat_type": "1Q Passing Yards",
                    "line_value": 44.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "1H Passing Yards",
                    "line_value": 104.5,
                    "over_multiplier": 1,
                    "under_multiplier": 1
                },
                {
                    "stat_type": "Fumbles Lost",
                    "line_value": 0.5,
                    "over_multiplier": 1.5,
                    "under_multiplier": 0.72
                },
                {
                    "stat_type": "Game High Pass Yards",
                    "line_value": 0.5,
                    "over_multiplier": null,
                    "under_multiplier": 1.14
                }
            ]
        },
}        

Error Handling

Raises a custom RateLimit exception on status code 429 (rate-limited).

General exceptions for other API errors.

Dependencies

requests: For making API calls.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

api-dfs-wrapper-1.1.4.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

api_dfs_wrapper-1.1.4-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file api-dfs-wrapper-1.1.4.tar.gz.

File metadata

  • Download URL: api-dfs-wrapper-1.1.4.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.5

File hashes

Hashes for api-dfs-wrapper-1.1.4.tar.gz
Algorithm Hash digest
SHA256 5e0d1476b4128ec02f16a5351cece67e838d99d0fe6f673466257058d834ba28
MD5 26501b8fa0deaa2fc6a6df70af923da8
BLAKE2b-256 fb54076fd769b8ff9f606eba03fb5946b32a6bc44b35cc8ac75197f250f2fe16

See more details on using hashes here.

File details

Details for the file api_dfs_wrapper-1.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for api_dfs_wrapper-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 78bde5cd80dbd9fffca5d38e883dd824cd5d787f05bc54dfcc95bde988b76865
MD5 0a5ca8d4dbbeec47c430b5de25938bfe
BLAKE2b-256 5c8adcc8919260aa10f8900923adce7443bc265a3daaf4323ac0afdf5a771d30

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page