GithubHelp home page GithubHelp logo

Comments (5)

BrianPaur avatar BrianPaur commented on May 26, 2024

Looks like TE is mapped incorrectly as well.
image

from espn-api.

BrianPaur avatar BrianPaur commented on May 26, 2024

These are after I updated the constant.py

from espn-api.

dtcarls avatar dtcarls commented on May 26, 2024

Can you provide how you are getting an incorrect position? I am not having any issues with the following.

box_scores = league.box_scores()

for box in box_scores:
    for i in box.away_lineup:
        if i.slot_position == 'TE' or i.slot_position == 'K':
            print(i.eligibleSlots)
            print(i.name)

from espn-api.

BrianPaur avatar BrianPaur commented on May 26, 2024

yeah, definitely. I'm kind of breaking this apart to get the data I need.

I used the get_league() function in the espn_requests.py file to pull the JSON data. When I do that the defaultPositionId doesn't match up. Which maybe that's the incorrect line item to be looking for. It looks like the position mapping in constant is using the eligibleSlots.

I tried googling to see if ESPN had any docs on it without any luck. But the below code is an example of what George Kittle's line data looks like.

from espn_api.requests.espn_requests import EspnFantasyRequests

def test():
    league = League(lg_id, year, espn_s2=espn_s2, swid=swid)

    espnrequest = EspnFantasyRequests(sport='nfl', year=year, league_id=lg_id, cookies=None,
                                      logger=Logger(name='nfl league', debug=False)).get_league()

    team_extract = {key: espnrequest[key] for key in espnrequest.keys()
                    & {'teams'}}

   # Below is specific for my league. I knew Kittle was on team one (position 0) and in entries at position 4. 
    print(team_extract['teams'][0]['roster']['entries'][4]['playerPoolEntry']['player'])

test()
{'active': True, 'defaultPositionId': 4, 'draftRanksByRankType': {'STANDARD': {'auctionValue': 6, 'published': False, 'rank': 79, 'rankSourceId': 0, 'rankType': 'STANDARD', 'slotId': 0}, 'PPR': {'auctionValue': 6, 'published': False, 'rank': 79, 'rankSourceId': 0, 'rankType': 'PPR', 'slotId': 0}}, 'droppable': True, 
'eligibleSlots': [5, 6, 23, 7, 20, 21], 'firstName': 'George', 
'fullName': 'George Kittle', 'id': 3040151, 'injured': False, 'injuryStatus': 'QUESTIONABLE', 'lastName': 'Kittle', 'lastNewsDate': 1694203004000, 'lastVideoDate': 1694014587000, 'outlooks': {'outlooksByWeek': {'1': "Kittle begins Week 1 with a questionable label. Assuming he dons the pads for the 49ers Week 1 opener in Pittsburgh, the veteran tight end remains one of the best players at the position. He's an automatic fantasy starter, despite facing a tough defense on the road."}}, 'ownership': {'auctionValueAverage': 9.952864803838555, 'averageDraftPosition': 56.45442761727681, 'percentChange': 0.1892069953279787, 'percentOwned': 98.91212533631992, 'percentStarted': 85.1987250255149}, 'proTeamId': 25, 'rankings': {'0': [{'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 9, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 7, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 7, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 7, 'rankSourceId': 5, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 6, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 6, 'rankSourceId': 5, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 7, 'rankSourceId': 3, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 10, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 7, 'rankSourceId': 3, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 6, 'rankSourceId': 11, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'averageRank': 6.25, 'published': True, 'rank': 0, 'rankSourceId': 0, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'averageRank': 5.5, 'published': True, 'rank': 0, 'rankSourceId': 0, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 6, 'rankSourceId': 11, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 12, 'rankType': 'PPR', 'slotId': 6}], '1': [{'auctionValue': 0, 'published': True, 'rank': 4, 'rankSourceId': 9, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 7, 'rankSourceId': 7, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 7, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 4, 'rankSourceId': 5, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 4, 'rankSourceId': 6, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 5, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 6, 'rankSourceId': 3, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 10, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 6, 'rankSourceId': 3, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 5, 'rankSourceId': 11, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'averageRank': 5.25, 'published': True, 'rank': 0, 'rankSourceId': 0, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'averageRank': 4.75, 'published': True, 'rank': 0, 'rankSourceId': 0, 'rankType': 'PPR', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 4, 'rankSourceId': 11, 'rankType': 'STANDARD', 'slotId': 6}, {'auctionValue': 0, 'published': True, 'rank': 4, 'rankSourceId': 12, 'rankType': 'PPR', 'slotId': 6}]}, 'seasonOutlook': "Kittle is entering his seventh NFL season in search of his sixth consecutive finish of fourth or better in fantasy PPG. He finished second in 2022, but got quite lucky in the TD department (his TE-high 12.8% TD rate was three times his prior career rate), which overshadowed a concerning 16% target share (4.2 per game) and 10.2 fantasy PPG (would've ranked eighth over the full season) during nine full games with Christian McCaffrey, Deebo Samuel and Brandon Aiyuk. Kittle has some durability concerns, having completed one full regular season (2018) in six tries. He remains a fine TE1 option, but with more target competition than ever before, it's possible the 29-year-old settles in as more of a midrange starter than the top-end play he's been in recent years.", 'stats': [{'appliedAverage': 0.0, 'appliedStats': {}, 'appliedTotal': 0.0, 'externalId': '2023', 'id': '002023', 'proTeamId': 0, 'scoringPeriodId': 0, 'seasonId': 2023, 'statSourceId': 0, 'statSplitTypeId': 0, 'stats': {}}, {'appliedAverage': 11.141618877666666, 'appliedStats': {'53': 62.16964118, '72': -0.839027788, '24': 1.102566341, '25': 0.977356278, '26': 0.011857238, '42': 72.58478701, '43': 30.490930368, '44': 0.606263854, '63': 0.019908684}, 'appliedTotal': 167.12428316499998, 'externalId': '2023', 'id': '122023', 'proTeamId': 0, 'scoringPeriodId': 0, 'seasonId': 2023, 'statSourceId': 1, 'statSplitTypeId': 2, 'stats': {'23': 2.38979158, '24': 11.02566341, '25': 0.162892713, '26': 0.005928619, '27': 2.0, '28': 1.0, '35': 0.004388366, '36': 0.003071856, '37': 0.000234436, '38': 8e-06, '39': 4.613650624, '40': 0.729324039, '42': 725.8478701, '43': 5.081821728, '44': 0.303131927, '45': 0.223302876, '46': 0.145928429, '47': 145.0, '48': 72.0, '49': 36.0, '50': 29.0, '51': 14.0, '53': 62.16964118, '54': 12.0, '55': 6.0, '56': 1.068544619, '57': 0.033047772, '58': 86.88270072, '60': 11.67527842, '61': 48.01328323, '62': 0.309060546, '63': 0.003318114, '66': 0.027915083, '67': 0.726201707, '68': 0.75411679, '70': 0.012840938, '71': 0.406672956, '72': 0.419513894, '73': 0.419513894, '210': 15.11764706, '212': 2.710899079, '213': 35.11487471}}, {'appliedStats': {'53': 4.15919435, '72': -0.055880004, '24': 0.05881986460000001, '25': 0.045672564, '26': 0.00056259, '42': 4.622661245, '43': 1.617588546, '44': 0.032650812, '63': 0.001326}, 'appliedTotal': 10.4825959676, 'externalId': '20231', 'id': '1120231', 'proTeamId': 0, 'scoringPeriodId': 1, 'seasonId': 2023, 'statSourceId': 1, 'statSplitTypeId': 1, 'stats': {'23': 0.136469496, '24': 0.588198646, '25': 0.007612094, '26': 0.000281295, '35': 0.000250588, '36': 0.000175412, '37': 1.08e-05, '38': 3.69e-07, '39': 4.31011079, '40': 1.176397292, '42': 46.22661245, '43': 0.269598091, '44': 0.016325406, '45': 0.010619836, '46': 0.006940063, '47': 9.0, '48': 4.0, '49': 2.0, '50': 1.0, '53': 4.15919435, '56': 0.077843597, '57': 0.00241, '58': 5.818823713, '60': 11.11431892, '61': 92.4532249, '62': 0.016606701, '63': 0.000221, '66': 0.001594096, '67': 0.048583424, '68': 0.05017752, '70': 0.000733284, '71': 0.027206717, '72': 0.027940002, '73': 0.027940002, '210': 0.5, '212': 0.155708253, '213': 2.265379065}}, {'appliedAverage': 13.366666666666667, 'appliedStats': {'53': 60.0, '72': -2.0, '42': 76.5, '43': 66.0}, 'appliedTotal': 200.5, 'externalId': '2022', 'id': '002022', 'proTeamId': 0, 'scoringPeriodId': 0, 'seasonId': 2022, 'statSourceId': 0, 'statSplitTypeId': 0, 'stats': {'41': 60.0, '42': 765.0, '43': 11.0, '45': 1.0, '46': 1.0, '47': 145.0, '48': 69.0, '49': 33.0, '50': 22.0, '51': 6.0, '52': 1.0, '53': 60.0, '54': 4.0, '56': 1.0, '58': 86.0, '59': 382.0, '60': 12.75, '61': 51.0, '67': 1.0, '68': 1.0, '71': 1.0, '72': 1.0, '73': 1.0, '106': 1.0, '108': 3.0, '109': 3.0, '155': 12.0, '156': 3.0, '158': 66.0, '183': 4.0, '184': 1.0, '185': 1.0, '186': 4.0, '210': 15.0, '213': 37.0}}, {'appliedAverage': 11.863612998428573, 'appliedStats': {'53': 61.14929679, '72': -0.826082474, '24': 1.121125334, '25': 1.0131271320000002, '26': 0.012292592, '42': 71.48396648, '43': 31.490998878, '44': 0.626251634, '63': 0.019605612}, 'appliedTotal': 166.09058197800002, 'externalId': '2023', 'id': '102023', 'proTeamId': 0, 'scoringPeriodId': 0, 'seasonId': 2023, 'statSourceId': 1, 'statSplitTypeId': 0, 'stats': {'23': 2.427341673, '24': 11.21125334, '25': 0.168854522, '26': 0.006146296, '27': 2.0, '28': 1.0, '35': 0.004457411, '36': 0.003120188, '37': 0.000243857, '38': 8.3219e-06, '39': 4.618737225, '40': 0.766967029, '42': 714.8396648, '43': 5.248499813, '44': 0.313125817, '45': 0.222982383, '46': 0.145718987, '47': 142.0, '48': 71.0, '49': 35.0, '50': 28.0, '51': 14.0, '53': 61.14929679, '54': 12.0, '55': 6.0, '56': 1.025914405, '57': 0.031729311, '58': 85.60455238, '60': 11.69007171, '61': 48.90251228, '62': 0.319272113, '63': 0.003267602, '66': 0.028353705, '67': 0.714283095, '68': 0.7426368, '70': 0.013042704, '71': 0.399998533, '72': 0.413041237, '73': 0.413041237, '210': 14.61764706, '212': 2.72389141, '213': 34.64689872}}, {'appliedAverage': 12.113741960285713, 'appliedStats': {'53': 62.72217712, '72': -0.97486241, '24': 1.083760818, '25': 0.9251236740000001, '26': 0.008921712, '42': 77.68872161000002, '43': 27.641816532, '44': 0.473602492, '63': 0.023125896}, 'appliedTotal': 169.592387444, 'externalId': '2022', 'id': '102022', 'proTeamId': 0, 'scoringPeriodId': 0, 'seasonId': 2022, 'statSourceId': 1, 'statSplitTypeId': 0, 'stats': {'23': 2.315084271, '24': 10.83760818, '25': 0.154187279, '26': 0.004460856, '27': 2.0, '28': 1.0, '35': 0.004251338, '36': 0.002975936, '37': 0.000242836, '38': 8.29e-06, '39': 4.681301806, '40': 0.767663913, '42': 776.8872161, '43': 4.606969422, '44': 0.236801246, '45': 0.243068183, '46': 0.158845058, '47': 155.0, '48': 77.0, '49': 38.0, '50': 31.0, '51': 15.0, '53': 62.72217712, '54': 12.0, '55': 6.0, '56': 1.427261126, '57': 0.044142097, '58': 89.50325955, '60': 12.3861647, '61': 55.02951114, '62': 0.241262102, '63': 0.003854316, '66': 0.031181662, '67': 0.844799359, '68': 0.875981021, '70': 0.014343564, '71': 0.473087641, '72': 0.487431205, '73': 0.487431205, '210': 14.11764706}}], 'universeId': 2}

This is what I get back when I run your code for my league. It isn't incorrect it just looks weird when using the eligible slots. Why is it mapped as 'WR/TE' and not just 'TE' for most TEs? When I go to the ESPN website they just have him as a TE.

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
Pat Freiermuth

['K', 'BE', 'IR']
Evan McPherson

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
George Kittle

['K', 'BE', 'IR']
Harrison Butker

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
Gerald Everett

['K', 'BE', 'IR']
Cameron Dicker

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
Kyle Pitts

['K', 'BE', 'IR']
Jason Myers

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
Evan Engram

['K', 'BE', 'IR']
Daniel Carlson

['K', 'BE', 'IR']
Justin Tucker

['WR/TE', 'TE', 'RB/WR/TE', 'OP', 'BE', 'IR']
David Njoku

image

from espn-api.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.