File size: 746 Bytes
f7e02c9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | from pydantic import BaseModel, Field
from typing import Optional, List
from datetime import datetime
from uuid import UUID, uuid4
class Proxy(BaseModel):
id: UUID = Field(default_factory=uuid4)
ip: str
port: int
protocol: str
anonymity: Optional[str] = "transparent"
country_code: Optional[str] = None
source: str
score: float = 0.0
last_validated: Optional[datetime] = None
created_at: datetime = Field(default_factory=datetime.now)
class ValidationResult(BaseModel):
proxy_id: UUID
passed: bool
latency_ms: float
is_elite: bool = False
headers: dict = {}
error: Optional[str] = None
validated_at: datetime = Field(default_factory=datetime.now)
|