2014-10-07 3 views
-1

XHR 요청을 모방하여 웹 사이트에서 사전이 포함 된 json 목록을 반환합니다. 이 코드는 다음과 같습니다 : 나는 유사한 코드를 사용하고json 항목에 유형 오류가 있습니다.

exceptions.TypeError: format() argument after ** must be a mapping, not list 

:

import requests 

url = 'http://www.whoscored.com/stageplayerstatfeed/-1/Overall' 
params = { 
'field': '0', 
'isAscending': 'false', 
'isMoreThanAvgApps': 'true', 
'isOverall': 'false', 
'numberOfPlayersToPick': '20', 
'orderBy': 'Rating', 
'page': '1', 
'stageId': '9155', 
'teamId': '-1' 
} 

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36', 
      'X-Requested-With': 'XMLHttpRequest', 
      'Host': 'www.whoscored.com', 
      'Referer': 'http://www.whoscored.com/'} 

responser = requests.get(url, params=params, headers=headers) 
playerdata = responser.json() 


for player in playerdata: 


    print ("{TeamId},{PlayerId},{GameStarted},{SubOn},{SubOff},{Yellow},{SecondYellow},{Red},{Goals},{Assists},{TotalPasses},{AccuratePasses}," 
"{AerialWon},{AerialLost},{Rating},{ManOfTheMatch},{TotalTackles},{Interceptions},{Fouls},{OffsidesWon},{TotalClearances},{WasDribbled}," 
"{TotalShots},{ShotsOnTarget},{ShotsBlocked},{OwnGoals},{KeyPasses},{Dribbles},{WasFouled},{Offsides},{Dispossesed},{Turnovers}," 
"{TotalCrosses},{AccurateCrosses},{TotalLongBalls},{AccurateLongBalls},{TotalThroughBalls},{AccurateThroughBalls},{RegionName}," 
"{RegionCode},{RegionId},{TournamentId},{TournamentName},{SeasonId},{StageId},{TeamRegionCode},{TeamName},{TeamIsNational},{IsOpta}," 
"{TeamRegionId},{TeamRegionName},{TournamentShortName},{SeasonName},{PlayedPositionsRaw},{PositionText},{PositionShort},{PositionLong}," 
"{Name},{Height},{Weight},{FirstName},{LastName},{KnownName},{WSName},{DateOfBirth},{Age},{Ranking}".decode('cp1252').format(**player)) 

내가 그러나 나는 다음과 같은 오류가 발생하고,이 요청 이내에 반환 사전 값 요소를 인쇄하는 것을 시도하고있다 형식이 문제없이 이전에이 오류를 해결하는 방법을 모르겠습니다. 누구든지 도움이 될 수 있습니까?

응답은 목록에 두 개의 요소 만 요소를 포함
+0

오류에서 'responser.text'를 사용하지 않았지만 responser.json()을 사용했음을 알 수 있습니다. 나는 그것을 바로 잡을 자유를 취했다. –

+0

당신의 질문이 유용하기 위해서는'playerdata'에있는 것을 우리에게 보여줘야합니다. (거대한 것이라면 같은 문제를 보여주는 더 작은 버전을 제공하십시오). 웹 페이지에 오늘과 같은 정보가 있어도 내일 또는 내년에 같은 질문을 할 때 보장 할 수는 없습니다. – abarnert

답변

2

플레이어의 목록입니다 :

>>> playerdata = responser.json() 
>>> playerdata[0] 
[1, 20, 389, 20] 
>>> playerdata[1] 
[{u'FirstName': u'James', u'LastName': u'Milner', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 1, u'AerialWon': 2, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 0, u'Assists': 1, u'Red': 0, u'Name': u'James Milner', u'PositionText': u'Midfielder', u'Ranking': 1, u'PositionLong': u'Midfielder (Center, Left, Right)', u'PlayerId': 4511, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 167, u'TotalTackles': 8, u'TotalLongBalls': 4, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 1, u'Turnovers': 2, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 0, u'ManOfTheMatch': 1, u'Height': 175, u'TeamName': u'Manchester City', u'RegionCode': u'gb-eng', u'TotalPasses': 72, u'TotalThroughBalls': 0, u'Dribbles': 3, u'DateOfBirth': u'/Date(505180800000)/', u'OwnGoals': 0, u'WasFouled': 0, u'TotalClearances': 1, u'Rating': 8.79, u'PlayedPositionsRaw': u'-MC-ML-MR-', u'Weight': 70, u'AccurateLongBalls': 3, u'OffsidesWon': 0, u'AccuratePasses': 67, u'Yellow': 0, u'KeyPasses': 4, u'TotalCrosses': 12, u'AccurateCrosses': 2, u'IsCurrentPlayer': True, u'Age': 28, u'PositionShort': u'M(CLR)', u'AccurateThroughBalls': 0, u'Interceptions': 1, u'Offsides': 0}, {u'FirstName': u'Niko', u'LastName': u'Kranjcar', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 1, u'AerialWon': 0, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 6, u'Assists': 0, u'Red': 0, u'Name': u'Niko Kranjcar', u'PositionText': u'Midfielder', u'Ranking': 2, u'PositionLong': u'Attacking Midfielder (Center, Left, Right)', u'PlayerId': 7411, u'SubOff': 0, u'Dispossesed': 2, u'TeamId': 171, u'TotalTackles': 2, u'TotalLongBalls': 7, u'Goals': 1, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 1, u'Turnovers': 2, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 0, u'ManOfTheMatch': 0, u'Height': 185, u'TeamName': u'Queens Park Rangers', u'RegionCode': u'hr', u'TotalPasses': 44, u'TotalThroughBalls': 0, u'Dribbles': 5, u'DateOfBirth': u'/Date(461199600000)/', u'OwnGoals': 0, u'WasFouled': 3, u'TotalClearances': 1, u'Rating': 8.63, u'PlayedPositionsRaw': u'-AMC-AML-AMR-', u'Weight': 84, u'AccurateLongBalls': 3, u'OffsidesWon': 0, u'AccuratePasses': 32, u'Yellow': 0, u'KeyPasses': 2, u'TotalCrosses': 9, u'AccurateCrosses': 2, u'IsCurrentPlayer': True, u'Age': 30, u'PositionShort': u'AM(CLR)', u'AccurateThroughBalls': 0, u'Interceptions': 0, u'Offsides': 0}, {u'FirstName': u'Diego', u'LastName': u'Da Silva Costa', u'KnownName': u'Diego Costa', u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 8, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 14, u'Assists': 0, u'Red': 0, u'Name': u'Diego Costa', u'PositionText': u'Forward', u'Ranking': 3, u'PositionLong': u'Forward', u'PlayerId': 24248, u'SubOff': 3, u'Dispossesed': 8, u'TeamId': 15, u'TotalTackles': 1, u'TotalLongBalls': 1, u'Goals': 6, u'SubOn': 0, u'WasDribbled': 1, u'AerialLost': 4, u'Turnovers': 11, u'ShotsOnTarget': 10, u'WSName': u'', u'Fouls': 3, u'ManOfTheMatch': 1, u'Height': 188, u'TeamName': u'Chelsea', u'RegionCode': u'es', u'TotalPasses': 99, u'TotalThroughBalls': 0, u'Dribbles': 6, u'DateOfBirth': u'/Date(592182000000)/', u'OwnGoals': 0, u'WasFouled': 6, u'TotalClearances': 4, u'Rating': 8.43, u'PlayedPositionsRaw': u'-FW-', u'Weight': 85, u'AccurateLongBalls': 1, u'OffsidesWon': 0, u'AccuratePasses': 78, u'Yellow': 0, u'KeyPasses': 8, u'TotalCrosses': 4, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 26, u'PositionShort': u'FW', u'AccurateThroughBalls': 0, u'Interceptions': 0, u'Offsides': 5}, {u'FirstName': u'Jonny', u'LastName': u'Evans', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 1, u'AerialWon': 4, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 3, u'TotalShots': 0, u'Assists': 0, u'Red': 0, u'Name': u'Jonny Evans', u'PositionText': u'Defender', u'Ranking': 4, u'PositionLong': u'Defender (Center)', u'PlayerId': 22079, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 32, u'TotalTackles': 2, u'TotalLongBalls': 12, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 1, u'Turnovers': 0, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 1, u'ManOfTheMatch': 0, u'Height': 188, u'TeamName': u'Manchester United', u'RegionCode': u'gb-nir', u'TotalPasses': 110, u'TotalThroughBalls': 0, u'Dribbles': 0, u'DateOfBirth': u'/Date(568166400000)/', u'OwnGoals': 0, u'WasFouled': 1, u'TotalClearances': 2, u'Rating': 8.37, u'PlayedPositionsRaw': u'-DC-', u'Weight': 77, u'AccurateLongBalls': 11, u'OffsidesWon': 1, u'AccuratePasses': 101, u'Yellow': 0, u'KeyPasses': 0, u'TotalCrosses': 1, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 26, u'PositionShort': u'D(C)', u'AccurateThroughBalls': 0, u'Interceptions': 2, u'Offsides': 0}, {u'FirstName': u'\xc1ngel', u'LastName': u'Di Mar\xeda', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 3, u'AerialWon': 0, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 10, u'Assists': 2, u'Red': 0, u'Name': u'\xc1ngel Di Mar\xeda', u'PositionText': u'Midfielder', u'Ranking': 5, u'PositionLong': u'Attacking Midfielder (Center, Left, Right)', u'PlayerId': 23110, u'SubOff': 2, u'Dispossesed': 5, u'TeamId': 32, u'TotalTackles': 2, u'TotalLongBalls': 24, u'Goals': 2, u'SubOn': 0, u'WasDribbled': 2, u'AerialLost': 0, u'Turnovers': 2, u'ShotsOnTarget': 3, u'WSName': None, u'Fouls': 2, u'ManOfTheMatch': 1, u'Height': 180, u'TeamName': u'Manchester United', u'RegionCode': u'ar', u'TotalPasses': 173, u'TotalThroughBalls': 3, u'Dribbles': 6, u'DateOfBirth': u'/Date(571795200000)/', u'OwnGoals': 0, u'WasFouled': 2, u'TotalClearances': 1, u'Rating': 8.203333333333333, u'PlayedPositionsRaw': u'-AMC-AML-AMR-', u'Weight': 70, u'AccurateLongBalls': 15, u'OffsidesWon': 0, u'AccuratePasses': 144, u'Yellow': 0, u'KeyPasses': 11, u'TotalCrosses': 34, u'AccurateCrosses': 8, u'IsCurrentPlayer': True, u'Age': 26, u'PositionShort': u'AM(CLR)', u'AccurateThroughBalls': 1, u'Interceptions': 4, u'Offsides': 0}, {u'FirstName': u'Eden', u'LastName': u'Hazard', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 2, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 9, u'Assists': 0, u'Red': 0, u'Name': u'Eden Hazard', u'PositionText': u'Midfielder', u'Ranking': 6, u'PositionLong': u'Attacking Midfielder (Center, Left, Right)', u'PlayerId': 33404, u'SubOff': 1, u'Dispossesed': 9, u'TeamId': 15, u'TotalTackles': 1, u'TotalLongBalls': 9, u'Goals': 2, u'SubOn': 0, u'WasDribbled': 2, u'AerialLost': 4, u'Turnovers': 7, u'ShotsOnTarget': 5, u'WSName': None, u'Fouls': 6, u'ManOfTheMatch': 1, u'Height': 173, u'TeamName': u'Chelsea', u'RegionCode': u'be', u'TotalPasses': 218, u'TotalThroughBalls': 1, u'Dribbles': 20, u'DateOfBirth': u'/Date(663206400000)/', u'OwnGoals': 0, u'WasFouled': 11, u'TotalClearances': 1, u'Rating': 8.145, u'PlayedPositionsRaw': u'-AMC-AML-AMR-', u'Weight': 74, u'AccurateLongBalls': 7, u'OffsidesWon': 0, u'AccuratePasses': 198, u'Yellow': 0, u'KeyPasses': 11, u'TotalCrosses': 10, u'AccurateCrosses': 2, u'IsCurrentPlayer': True, u'Age': 23, u'PositionShort': u'AM(CLR)', u'AccurateThroughBalls': 0, u'Interceptions': 2, u'Offsides': 0}, {u'FirstName': u'Victor', u'LastName': u'Moses', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 2, u'AerialWon': 1, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 5, u'Assists': 1, u'Red': 0, u'Name': u'Victor Moses', u'PositionText': u'Midfielder', u'Ranking': 7, u'PositionLong': u'Attacking Midfielder (Center, Left, Right)', u'PlayerId': 33064, u'SubOff': 1, u'Dispossesed': 4, u'TeamId': 96, u'TotalTackles': 7, u'TotalLongBalls': 1, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 4, u'Turnovers': 5, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 1, u'ManOfTheMatch': 1, u'Height': 177, u'TeamName': u'Stoke', u'RegionCode': u'ng', u'TotalPasses': 42, u'TotalThroughBalls': 0, u'Dribbles': 6, u'DateOfBirth': u'/Date(660960000000)/', u'OwnGoals': 0, u'WasFouled': 8, u'TotalClearances': 0, u'Rating': 8.129999999999999, u'PlayedPositionsRaw': u'-AMC-AML-AMR-', u'Weight': 75, u'AccurateLongBalls': 1, u'OffsidesWon': 0, u'AccuratePasses': 39, u'Yellow': 0, u'KeyPasses': 7, u'TotalCrosses': 29, u'AccurateCrosses': 12, u'IsCurrentPlayer': True, u'Age': 23, u'PositionShort': u'AM(CLR)', u'AccurateThroughBalls': 0, u'Interceptions': 3, u'Offsides': 0}, {u'FirstName': u'Leroy', u'LastName': u'Fer', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 2, u'AerialWon': 3, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 2, u'Assists': 1, u'Red': 0, u'Name': u'Leroy Fer', u'PositionText': u'Midfielder', u'Ranking': 8, u'PositionLong': u'Attacking Midfielder (Center)', u'PlayerId': 35174, u'SubOff': 1, u'Dispossesed': 1, u'TeamId': 171, u'TotalTackles': 5, u'TotalLongBalls': 7, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 1, u'AerialLost': 2, u'Turnovers': 1, u'ShotsOnTarget': 1, u'WSName': None, u'Fouls': 3, u'ManOfTheMatch': 1, u'Height': 188, u'TeamName': u'Queens Park Rangers', u'RegionCode': u'nl', u'TotalPasses': 89, u'TotalThroughBalls': 0, u'Dribbles': 6, u'DateOfBirth': u'/Date(631497600000)/', u'OwnGoals': 0, u'WasFouled': 5, u'TotalClearances': 1, u'Rating': 8.120000000000001, u'PlayedPositionsRaw': u'-AMC-', u'Weight': 79, u'AccurateLongBalls': 7, u'OffsidesWon': 0, u'AccuratePasses': 77, u'Yellow': 1, u'KeyPasses': 9, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 24, u'PositionShort': u'AM(C)', u'AccurateThroughBalls': 0, u'Interceptions': 2, u'Offsides': 0}, {u'FirstName': u'Branislav', u'LastName': u'Ivanovic', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 21, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 7, u'Assists': 0, u'Red': 0, u'Name': u'Branislav Ivanovic', u'PositionText': u'Defender', u'Ranking': 9, u'PositionLong': u'Defender (Center, Right)', u'PlayerId': 15338, u'SubOff': 0, u'Dispossesed': 1, u'TeamId': 15, u'TotalTackles': 11, u'TotalLongBalls': 19, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 4, u'AerialLost': 8, u'Turnovers': 2, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 3, u'ManOfTheMatch': 1, u'Height': 185, u'TeamName': u'Chelsea', u'RegionCode': u'rs', u'TotalPasses': 178, u'TotalThroughBalls': 2, u'Dribbles': 6, u'DateOfBirth': u'/Date(446256000000)/', u'OwnGoals': 0, u'WasFouled': 0, u'TotalClearances': 19, u'Rating': 8.105, u'PlayedPositionsRaw': u'-DC-DR-', u'Weight': 91, u'AccurateLongBalls': 15, u'OffsidesWon': 0, u'AccuratePasses': 153, u'Yellow': 1, u'KeyPasses': 10, u'TotalCrosses': 7, u'AccurateCrosses': 3, u'IsCurrentPlayer': True, u'Age': 30, u'PositionShort': u'D(CR)', u'AccurateThroughBalls': 1, u'Interceptions': 5, u'Offsides': 0}, {u'FirstName': u'Sadio', u'LastName': u'Man\xe9', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 1, u'AerialWon': 0, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 3, u'Assists': 1, u'Red': 0, u'Name': u'Sadio Man\xe9', u'PositionText': u'Midfielder', u'Ranking': 10, u'PositionLong': u'Midfielder (Left)', u'PlayerId': 109915, u'SubOff': 1, u'Dispossesed': 2, u'TeamId': 18, u'TotalTackles': 1, u'TotalLongBalls': 0, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 4, u'Turnovers': 1, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 1, u'ManOfTheMatch': 0, u'Height': 175, u'TeamName': u'Southampton', u'RegionCode': u'sn', u'TotalPasses': 25, u'TotalThroughBalls': 0, u'Dribbles': 3, u'DateOfBirth': u'/Date(702860400000)/', u'OwnGoals': 0, u'WasFouled': 3, u'TotalClearances': 0, u'Rating': 8.02, u'PlayedPositionsRaw': u'-ML-', u'Weight': 69, u'AccurateLongBalls': 0, u'OffsidesWon': 0, u'AccuratePasses': 22, u'Yellow': 1, u'KeyPasses': 3, u'TotalCrosses': 4, u'AccurateCrosses': 1, u'IsCurrentPlayer': True, u'Age': 22, u'PositionShort': u'M(L)', u'AccurateThroughBalls': 0, u'Interceptions': 0, u'Offsides': 3}, {u'FirstName': u'Rafael Pereira', u'LastName': u'da Silva', u'KnownName': u'Rafael', u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 3, u'AerialWon': 1, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 1, u'TotalShots': 0, u'Assists': 1, u'Red': 0, u'Name': u'Rafael', u'PositionText': u'Defender', u'Ranking': 11, u'PositionLong': u'Defender (Right)', u'PlayerId': 4092, u'SubOff': 1, u'Dispossesed': 1, u'TeamId': 32, u'TotalTackles': 10, u'TotalLongBalls': 19, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 3, u'AerialLost': 2, u'Turnovers': 2, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 1, u'ManOfTheMatch': 1, u'Height': 173, u'TeamName': u'Manchester United', u'RegionCode': u'br', u'TotalPasses': 157, u'TotalThroughBalls': 0, u'Dribbles': 7, u'DateOfBirth': u'/Date(647478000000)/', u'OwnGoals': 0, u'WasFouled': 5, u'TotalClearances': 14, u'Rating': 7.966666666666668, u'PlayedPositionsRaw': u'-DR-', u'Weight': 80, u'AccurateLongBalls': 6, u'OffsidesWon': 0, u'AccuratePasses': 136, u'Yellow': 0, u'KeyPasses': 3, u'TotalCrosses': 10, u'AccurateCrosses': 2, u'IsCurrentPlayer': True, u'Age': 24, u'PositionShort': u'D(R)', u'AccurateThroughBalls': 0, u'Interceptions': 12, u'Offsides': 0}, {u'FirstName': u'Cesc', u'LastName': u'F\xe0bregas', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 5, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 1, u'TotalShots': 6, u'Assists': 4, u'Red': 0, u'Name': u'Cesc F\xe0bregas', u'PositionText': u'Midfielder', u'Ranking': 12, u'PositionLong': u'Midfielder (Center, Left, Right)/Forward', u'PlayerId': 8040, u'SubOff': 1, u'Dispossesed': 6, u'TeamId': 15, u'TotalTackles': 5, u'TotalLongBalls': 39, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 12, u'AerialLost': 2, u'Turnovers': 2, u'ShotsOnTarget': 2, u'WSName': u'', u'Fouls': 3, u'ManOfTheMatch': 0, u'Height': 175, u'TeamName': u'Chelsea', u'RegionCode': u'es', u'TotalPasses': 378, u'TotalThroughBalls': 2, u'Dribbles': 4, u'DateOfBirth': u'/Date(547081200000)/', u'OwnGoals': 0, u'WasFouled': 6, u'TotalClearances': 4, u'Rating': 7.942500000000001, u'PlayedPositionsRaw': u'-FW-MC-ML-MR-', u'Weight': 74, u'AccurateLongBalls': 29, u'OffsidesWon': 0, u'AccuratePasses': 349, u'Yellow': 1, u'KeyPasses': 14, u'TotalCrosses': 22, u'AccurateCrosses': 7, u'IsCurrentPlayer': True, u'Age': 27, u'PositionShort': u'M(CLR),FW', u'AccurateThroughBalls': 1, u'Interceptions': 2, u'Offsides': 0}, {u'FirstName': u'Joleon', u'LastName': u'Lescott', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 1, u'AerialWon': 4, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 1, u'TotalShots': 0, u'Assists': 0, u'Red': 0, u'Name': u'Joleon Lescott', u'PositionText': u'Defender', u'Ranking': 13, u'PositionLong': u'Defender (Center)', u'PlayerId': 8137, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 175, u'TotalTackles': 0, u'TotalLongBalls': 4, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 0, u'AerialLost': 1, u'Turnovers': 0, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 1, u'ManOfTheMatch': 0, u'Height': 190, u'TeamName': u'West Bromwich Albion', u'RegionCode': u'gb-eng', u'TotalPasses': 64, u'TotalThroughBalls': 0, u'Dribbles': 0, u'DateOfBirth': u'/Date(398300400000)/', u'OwnGoals': 0, u'WasFouled': 0, u'TotalClearances': 11, u'Rating': 7.86, u'PlayedPositionsRaw': u'-DC-', u'Weight': 89, u'AccurateLongBalls': 1, u'OffsidesWon': 1, u'AccuratePasses': 53, u'Yellow': 0, u'KeyPasses': 0, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 32, u'PositionShort': u'D(C)', u'AccurateThroughBalls': 0, u'Interceptions': 3, u'Offsides': 0}, {u'FirstName': u'Mile', u'LastName': u'Jedinak', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 3, u'AerialWon': 16, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 2, u'TotalShots': 5, u'Assists': 1, u'Red': 0, u'Name': u'Mile Jedinak', u'PositionText': u'Midfielder', u'Ranking': 14, u'PositionLong': u'Defensive Midfielder (Center)', u'PlayerId': 13727, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 162, u'TotalTackles': 14, u'TotalLongBalls': 26, u'Goals': 1, u'SubOn': 0, u'WasDribbled': 7, u'AerialLost': 5, u'Turnovers': 3, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 10, u'ManOfTheMatch': 1, u'Height': 189, u'TeamName': u'Crystal Palace', u'RegionCode': u'au', u'TotalPasses': 150, u'TotalThroughBalls': 0, u'Dribbles': 0, u'DateOfBirth': u'/Date(460335600000)/', u'OwnGoals': 0, u'WasFouled': 4, u'TotalClearances': 5, u'Rating': 7.8566666666666665, u'PlayedPositionsRaw': u'-DMC-', u'Weight': 81, u'AccurateLongBalls': 9, u'OffsidesWon': 0, u'AccuratePasses': 101, u'Yellow': 2, u'KeyPasses': 1, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 30, u'PositionShort': u'DM(C)', u'AccurateThroughBalls': 0, u'Interceptions': 12, u'Offsides': 0}, {u'FirstName': u'Ritchie', u'LastName': u'de Laet', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 12, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 3, u'TotalShots': 0, u'Assists': 1, u'Red': 0, u'Name': u'Ritchie de Laet', u'PositionText': u'Defender', u'Ranking': 15, u'PositionLong': u'Defender (Center, Right)', u'PlayerId': 31856, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 14, u'TotalTackles': 16, u'TotalLongBalls': 24, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 5, u'AerialLost': 3, u'Turnovers': 6, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 6, u'ManOfTheMatch': 1, u'Height': 186, u'TeamName': u'Leicester', u'RegionCode': u'be', u'TotalPasses': 134, u'TotalThroughBalls': 1, u'Dribbles': 4, u'DateOfBirth': u'/Date(596678400000)/', u'OwnGoals': 0, u'WasFouled': 3, u'TotalClearances': 26, u'Rating': 7.855, u'PlayedPositionsRaw': u'-DC-DR-', u'Weight': 77, u'AccurateLongBalls': 9, u'OffsidesWon': 0, u'AccuratePasses': 100, u'Yellow': 1, u'KeyPasses': 6, u'TotalCrosses': 9, u'AccurateCrosses': 1, u'IsCurrentPlayer': True, u'Age': 25, u'PositionShort': u'D(CR)', u'AccurateThroughBalls': 1, u'Interceptions': 15, u'Offsides': 0}, {u'FirstName': u'Curtis', u'LastName': u'Davies', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 23, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 5, u'TotalShots': 1, u'Assists': 0, u'Red': 0, u'Name': u'Curtis Davies', u'PositionText': u'Defender', u'Ranking': 16, u'PositionLong': u'Defender (Center)', u'PlayerId': 8484, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 214, u'TotalTackles': 7, u'TotalLongBalls': 13, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 2, u'AerialLost': 6, u'Turnovers': 1, u'ShotsOnTarget': 0, u'WSName': None, u'Fouls': 0, u'ManOfTheMatch': 1, u'Height': 188, u'TeamName': u'Hull', u'RegionCode': u'gb-eng', u'TotalPasses': 147, u'TotalThroughBalls': 0, u'Dribbles': 2, u'DateOfBirth': u'/Date(479692800000)/', u'OwnGoals': 0, u'WasFouled': 2, u'TotalClearances': 49, u'Rating': 7.842499999999999, u'PlayedPositionsRaw': u'-DC-', u'Weight': 76, u'AccurateLongBalls': 5, u'OffsidesWon': 2, u'AccuratePasses': 132, u'Yellow': 0, u'KeyPasses': 1, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 29, u'PositionShort': u'D(C)', u'AccurateThroughBalls': 0, u'Interceptions': 15, u'Offsides': 0}, {u'FirstName': u'Jordan', u'LastName': u'Henderson', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 5, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 1, u'TotalShots': 6, u'Assists': 2, u'Red': 0, u'Name': u'Jordan Henderson', u'PositionText': u'Midfielder', u'Ranking': 17, u'PositionLong': u'Midfielder (Center, Left, Right)', u'PlayerId': 68659, u'SubOff': 0, u'Dispossesed': 4, u'TeamId': 26, u'TotalTackles': 14, u'TotalLongBalls': 28, u'Goals': 1, u'SubOn': 0, u'WasDribbled': 3, u'AerialLost': 1, u'Turnovers': 2, u'ShotsOnTarget': 3, u'WSName': None, u'Fouls': 3, u'ManOfTheMatch': 1, u'Height': 182, u'TeamName': u'Liverpool', u'RegionCode': u'gb-eng', u'TotalPasses': 289, u'TotalThroughBalls': 3, u'Dribbles': 1, u'DateOfBirth': u'/Date(645577200000)/', u'OwnGoals': 0, u'WasFouled': 3, u'TotalClearances': 5, u'Rating': 7.8375, u'PlayedPositionsRaw': u'-MC-ML-MR-', u'Weight': 67, u'AccurateLongBalls': 18, u'OffsidesWon': 0, u'AccuratePasses': 254, u'Yellow': 0, u'KeyPasses': 11, u'TotalCrosses': 4, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 24, u'PositionShort': u'M(CLR)', u'AccurateThroughBalls': 2, u'Interceptions': 8, u'Offsides': 0}, {u'FirstName': u'Papiss Demba', u'LastName': u'Ciss\xe9', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 0, u'AerialWon': 0, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 3, u'Assists': 0, u'Red': 0, u'Name': u'Papiss Demba Ciss\xe9', u'PositionText': u'Forward', u'Ranking': 18, u'PositionLong': u'Attacking Midfielder (Right)/Forward', u'PlayerId': 24223, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 23, u'TotalTackles': 0, u'TotalLongBalls': 0, u'Goals': 2, u'SubOn': 1, u'WasDribbled': 0, u'AerialLost': 1, u'Turnovers': 2, u'ShotsOnTarget': 2, u'WSName': None, u'Fouls': 0, u'ManOfTheMatch': 0, u'Height': 183, u'TeamName': u'Newcastle United', u'RegionCode': u'sn', u'TotalPasses': 10, u'TotalThroughBalls': 0, u'Dribbles': 0, u'DateOfBirth': u'/Date(486601200000)/', u'OwnGoals': 0, u'WasFouled': 0, u'TotalClearances': 0, u'Rating': 7.83, u'PlayedPositionsRaw': u'-AMR-FW-', u'Weight': 73, u'AccurateLongBalls': 0, u'OffsidesWon': 0, u'AccuratePasses': 8, u'Yellow': 0, u'KeyPasses': 0, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 29, u'PositionShort': u'AM(R),FW', u'AccurateThroughBalls': 0, u'Interceptions': 0, u'Offsides': 0}, {u'FirstName': u'Ander', u'LastName': u'Herrera', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 3, u'AerialWon': 1, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 2, u'TotalShots': 3, u'Assists': 1, u'Red': 0, u'Name': u'Ander Herrera', u'PositionText': u'Midfielder', u'Ranking': 19, u'PositionLong': u'Midfielder (Center, Left, Right)', u'PlayerId': 71174, u'SubOff': 2, u'Dispossesed': 3, u'TeamId': 32, u'TotalTackles': 11, u'TotalLongBalls': 12, u'Goals': 1, u'SubOn': 0, u'WasDribbled': 1, u'AerialLost': 3, u'Turnovers': 2, u'ShotsOnTarget': 1, u'WSName': None, u'Fouls': 5, u'ManOfTheMatch': 1, u'Height': 182, u'TeamName': u'Manchester United', u'RegionCode': u'es', u'TotalPasses': 179, u'TotalThroughBalls': 0, u'Dribbles': 4, u'DateOfBirth': u'/Date(619052400000)/', u'OwnGoals': 0, u'WasFouled': 7, u'TotalClearances': 4, u'Rating': 7.793333333333334, u'PlayedPositionsRaw': u'-MC-ML-MR-', u'Weight': 70, u'AccurateLongBalls': 7, u'OffsidesWon': 0, u'AccuratePasses': 161, u'Yellow': 1, u'KeyPasses': 5, u'TotalCrosses': 0, u'AccurateCrosses': 0, u'IsCurrentPlayer': True, u'Age': 25, u'PositionShort': u'M(CLR)', u'AccurateThroughBalls': 0, u'Interceptions': 3, u'Offsides': 0}, {u'FirstName': u'C\xe9sar', u'LastName': u'Azpilicueta', u'KnownName': None, u'Field': {u'DisplayName': u'Home', u'Value': 0}, u'GameStarted': 4, u'AerialWon': 10, u'TeamRegionCode': u'gb-eng', u'SecondYellow': 0, u'ShotsBlocked': 0, u'TotalShots': 1, u'Assists': 1, u'Red': 0, u'Name': u'C\xe9sar Azpilicueta', u'PositionText': u'Defender', u'Ranking': 20, u'PositionLong': u'Defender (Left, Right)', u'PlayerId': 25931, u'SubOff': 0, u'Dispossesed': 0, u'TeamId': 15, u'TotalTackles': 14, u'TotalLongBalls': 12, u'Goals': 0, u'SubOn': 0, u'WasDribbled': 7, u'AerialLost': 7, u'Turnovers': 1, u'ShotsOnTarget': 1, u'WSName': None, u'Fouls': 3, u'ManOfTheMatch': 1, u'Height': 178, u'TeamName': u'Chelsea', u'RegionCode': u'es', u'TotalPasses': 218, u'TotalThroughBalls': 0, u'Dribbles': 0, u'DateOfBirth': u'/Date(620262000000)/', u'OwnGoals': 0, u'WasFouled': 2, u'TotalClearances': 15, u'Rating': 7.782500000000001, u'PlayedPositionsRaw': u'-DL-DR-', u'Weight': 75, u'AccurateLongBalls': 6, u'OffsidesWon': 0, u'AccuratePasses': 196, u'Yellow': 0, u'KeyPasses': 5, u'TotalCrosses': 6, u'AccurateCrosses': 2, u'IsCurrentPlayer': True, u'Age': 25, u'PositionShort': u'D(LR)', u'AccurateThroughBalls': 0, u'Interceptions': 11, u'Offsides': 0}] 

조정 그에 따라 루프 :

playerdata = responser.json() 

for player in playerdata[1]: 

에는 포인트가 없습니다 문자열 리터럴에 .decode()을 사용하십시오. 문자열에 u"..."이라는 접두어를 사용하여 unicode 개체로 변경하십시오.

당신은 당신의 print() 문에 67 개 키를 기대하는 것처럼 보이지만 플레이어 오브젝트 만 57 키가 있습니다 :

>>> len(player.keys()) 
57 
당신이 당신의 기대를 조정해야합니다

은.

+0

괜찮 았어, 고마워. 나는 나의 질문에서 하나를 위해 나의 프로젝트의 다른 부분에서 사용 된 사전을 재활용했다. 그들은 처음에는 똑같이 보였으므로 다른 길이를 설명한다. – gdogg371

관련 문제