Prepare mobile de parser release
This commit is contained in:
35
iaai_scraper/mobile_de/models.py
Normal file
35
iaai_scraper/mobile_de/models.py
Normal 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)
|
||||
Reference in New Issue
Block a user