def fillOutMatch(SESSION, match, name, id): user = SESSION.query(User).filter(User.id == id).filter( User.name == name).one() d = datetime.strptime(match['started_at'], "%Y-%m-%dT%H:%M:%S%z") _m = SESSION.query(Match).filter(Match.user_id==user.id).\ filter(Match.user_name==user.name).\ filter(Match.date==d).\ filter(Match.id==match['match_id']).all() #Don't add duplicate data if len(_m) > 0: #my_print("duplicate data!") return True participant = match['participant'] stats = participant['stats'] combat = stats['combat'] m = Match() m.pubg_id = participant['_id'] # 2018-01-24T03:10:17+0000 m.date = d m.id = match['match_id'] m.mode = match['mode'] m.queue_size = match['queue_size'] m.rank = stats['rank'] m.rating_delta = stats['rating_delta'] m.boosts = combat['boosts'] m.damage = combat['damage']['damage_dealt'] m.knocks = combat['dbno']['knock_downs'] m.revives = combat['dbno']['revives'] m.death_type = combat['death_type'] m.ride_distance = combat['distance_traveled']['ride_distance'] m.walk_distance = combat['distance_traveled']['walk_distance'] m.distance_traveled = m.ride_distance + m.walk_distance m.heals = combat['heals'] m.assists = combat['kda']['assists'] m.headshot_kills = combat['kda']['headshot_kills'] m.kill_steaks = combat['kda']['kill_steaks'] m.kills = combat['kda']['kills'] m.longest_kill = combat['kda']['longest_kill'] m.road_kills = combat['kda']['road_kills'] m.team_kills = combat['kda']['team_kills'] m.kda = m.kills + m.assists m.kill_place = combat['kill_place'] m.most_damage = combat['most_damage'] m.time_survived = combat['time_survived'] m.vehicle_destroys = combat['vehicle_destroys'] m.weapon_acquired = combat['weapon_acquired'] m.win_place = combat['win_place'] m.user_id = user.id m.user_name = user.name m.user.append(user) user.matches.append(m) SESSION.add(m) return False