| 12345678910111213141516171819202122232425262728293031323334 |
- __package__ = 'archivebox.parsers'
- import json
- from typing import IO, Iterable
- from datetime import datetime, timezone
- from ..index.schema import Link
- from ..util import (
- htmldecode,
- enforce_types,
- )
- from .generic_json import jsonObjectToLink
- def parse_line(line: str):
- if line.strip() != "":
- return json.loads(line)
- @enforce_types
- def parse_generic_jsonl_export(json_file: IO[str], **_kwargs) -> Iterable[Link]:
- """Parse JSONL format bookmarks export files"""
- json_file.seek(0)
- links = [ parse_line(line) for line in json_file ]
- for link in links:
- if link:
- yield jsonObjectToLink(link,json_file.name)
- KEY = 'jsonl'
- NAME = 'Generic JSONL'
- PARSER = parse_generic_jsonl_export
|