JobSpy/api/core/scrapers/__init__.py

27 lines
544 B
Python
Raw Normal View History

2023-07-06 17:12:01 -07:00
from pydantic import BaseModel
from enum import Enum
from ..jobs import JobResponse, JobPost
2023-07-06 17:12:01 -07:00
class Site(Enum):
LINKEDIN = "linkedin"
INDEED = "indeed"
ZIP_RECRUITER = "zip_recruiter"
class ScraperInput(BaseModel):
2023-07-10 16:04:44 -07:00
site_type: Site
2023-07-06 17:12:01 -07:00
search_term: str
2023-07-10 16:04:44 -07:00
location: str
2023-07-10 14:14:05 -07:00
distance: int = 25
2023-07-10 16:04:44 -07:00
results_wanted: int = 15 #: TODO: implement
2023-07-06 17:12:01 -07:00
class Scraper: #: to be used as a child class
def __init__(self, site: Site):
self.site = site
def scrape(self, scraper_input: ScraperInput) -> JobResponse: ...