Files
ocups-kafka/job_crawler/app/models/job.py

25 lines
739 B
Python
Raw Normal View History

"""招聘数据模型"""
from datetime import datetime
import uuid
2026-01-15 21:20:57 +08:00
class JobData:
"""招聘数据 - 保留原始数据格式"""
2026-01-15 21:20:57 +08:00
def __init__(self, raw_data: dict, task_id: str = ""):
self.raw_data = raw_data
self.task_id = task_id
# 添加元数据
self.raw_data["_id"] = str(uuid.uuid4())
self.raw_data["_task_id"] = task_id
self.raw_data["_crawl_time"] = datetime.now().isoformat()
def to_dict(self) -> dict:
"""转换为字典(原始数据 + 元数据)"""
return self.raw_data
@classmethod
2026-01-15 21:20:57 +08:00
def from_raw(cls, raw: dict, task_id: str = "") -> "JobData":
"""从原始API数据创建"""
return cls(raw.copy(), task_id)