Source code for pdf_jsonl_smith.writer
from __future__ import annotations
import json
from collections.abc import Iterable, Mapping
from pathlib import Path
from typing import Any
[docs]
def write_jsonl(records: Iterable[Mapping[str, Any]], output_path: str | Path) -> int:
"""Write records as UTF-8 JSONL and return the number of lines written."""
count = 0
with Path(output_path).open("w", encoding="utf-8") as output_file:
for record in records:
output_file.write(
json.dumps(record, ensure_ascii=False, separators=(",", ":"))
)
output_file.write("\n")
count += 1
return count