Safely map integers

This commit is contained in:
544146
2023-09-16 22:56:47 +01:00
parent 8b8846c082
commit eb3fa7a6db
666 changed files with 599680 additions and 599648 deletions
+18 -5
View File
@@ -6,6 +6,13 @@ from dataclasses import field
import xmltodict
def safe_int(value):
try:
return int(value)
except (ValueError, TypeError):
return None
@dataclass
class DRSSheetDataZetaraku:
type: str
@@ -299,11 +306,17 @@ class DRSTrackStep:
DRSTrackStepPlayerInfo(int(data['player_id']['#text'])),
[
DRSTrackPoint(
tick=point.get('tick', {}).get('#text'),
left_pos=point.get('left_pos', {}).get('#text'),
right_pos=point.get('right_pos', {}).get('#text'),
left_end_pos=point.get('left_end_pos', {}).get('#text'),
right_end_pos=point.get('right_end_pos', {}).get('#text'),
tick=safe_int(point.get('tick', {}).get('#text')),
left_pos=safe_int(point.get('left_pos', {}).get('#text')),
right_pos=safe_int(
point.get('right_pos', {}).get('#text'),
),
left_end_pos=safe_int(
point.get('left_end_pos', {}).get('#text'),
),
right_end_pos=safe_int(
point.get('right_end_pos', {}).get('#text'),
),
) for point in points
],
)