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.5.tar.gz (8.9 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.5-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: api-dfs-wrapper-1.1.5.tar.gz
  • Upload date:
  • Size: 8.9 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.5.tar.gz
Algorithm Hash digest
SHA256 a45da1e77f740636ad67961d29ab57a9f10d18be3e2d5cc04fb815afd770e8c8
MD5 72c763d4dbd40185c22decd8609ea53b
BLAKE2b-256 420f709359c1fa50cf5a5b99ad0bcdd53d06447980a7628db4961cdda23ea55a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for api_dfs_wrapper-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 304a264b817163e85a55d3e5ec862a0e8e67d4fd4bf45ce81b18edfef7d85331
MD5 6214be36401590b460fb6ce8a9f5cb11
BLAKE2b-256 5ece3c907a73f8861ed3c51ca30862669c10e7db7d6985c6263d6becac4b21c8

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