added ability to search for corps, chars and alliances.
This commit is contained in:
67
eve_auth/data_classes.py
Normal file
67
eve_auth/data_classes.py
Normal file
@@ -0,0 +1,67 @@
|
||||
from dateutil import parser
|
||||
from dataclasses import dataclass
|
||||
from datetime import datetime
|
||||
import bleach
|
||||
|
||||
BLEACH_CONFIG = {
|
||||
'tags': ['br', 'font', 'b', 'i', 'u', 'loc', 'a'],
|
||||
'attributes': ['href']
|
||||
}
|
||||
|
||||
|
||||
@dataclass
|
||||
class Alliance:
|
||||
id: int
|
||||
name: str
|
||||
creator_id: int
|
||||
creator_corporation_id: int
|
||||
ticker: str
|
||||
date_founded: datetime
|
||||
executor_corporation_id: int
|
||||
faction_id: int = None
|
||||
|
||||
def __post_init__(self):
|
||||
if self.date_founded:
|
||||
self.date_founded = parser.parse(self.date_founded)
|
||||
|
||||
|
||||
@dataclass
|
||||
class Corporation:
|
||||
id: int
|
||||
name: str
|
||||
ticker: str
|
||||
member_count: int
|
||||
ceo_id: int
|
||||
tax_rate: int
|
||||
creator_id: int
|
||||
description: str
|
||||
date_founded: datetime
|
||||
home_station_id: int
|
||||
shares: int
|
||||
alliance_id: int = None
|
||||
faction_id: int = None
|
||||
url: str = ''
|
||||
|
||||
def __post_init__(self):
|
||||
if self.date_founded:
|
||||
self.date_founded = parser.parse(self.date_founded)
|
||||
self.description = bleach.clean(self.description, **BLEACH_CONFIG)
|
||||
|
||||
|
||||
@dataclass
|
||||
class Character:
|
||||
id: int
|
||||
corporation_id: int
|
||||
name: str
|
||||
gender: str
|
||||
race_id: int
|
||||
bloodline_id: int
|
||||
description: str
|
||||
ancestry_id: int
|
||||
security_status: float
|
||||
birthday: datetime
|
||||
|
||||
def __post_init__(self):
|
||||
if self.birthday:
|
||||
self.birthday = parser.parse(self.birthday)
|
||||
self.description = bleach.clean(self.description, **BLEACH_CONFIG)
|
||||
Reference in New Issue
Block a user