INNER CODE UNIT · Python
encode_record
defiprime/defiprime1 · scripts/algolia-index.py:30
def encode_record(record):
return json.dumps(record, ensure_ascii=False, separators=(",", ":")).encode("utf-8")
def record_size(record):
return len(encode_record(record))
def load_records(path):
with open(path, encoding="utf-8") as handle:
payload = json.load(handle)
if not isinstance(payload, list):
raise ValueError(f"{path}: expected a JSON list of records")
seen = set()
for position, record in enumerate(payload):
if not isinstance(record, dict):
raise ValueError(f"{path}: record {position} is not an object")
object_id = record.get("objectID")