Prepare mobile de parser release

This commit is contained in:
qananasikq
2026-04-27 21:10:17 +03:00
parent 31f87a9bdf
commit b86bcd04b8
21 changed files with 2835 additions and 423 deletions

View File

@@ -0,0 +1,35 @@
from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any
@dataclass(frozen=True)
class MobileDeListing:
"""One listing extracted from mobile.de search results."""
id: str
url: str
title: str | None = None
subtitle: str | None = None
price: str | None = None
seller_name: str | None = None
seller_type: str | None = None
location: str | None = None
first_registration: str | None = None
mileage: str | None = None
power: str | None = None
fuel: str | None = None
transmission: str | None = None
raw: dict[str, Any] = field(default_factory=dict)
@dataclass(frozen=True)
class MobileDeSearchPage:
"""Parsed mobile.de search page."""
url: str
page_number: int
total_results: int | None
listings: list[MobileDeListing]
raw_search_results: dict[str, Any] = field(default_factory=dict)