mirror of
https://github.com/Bunsly/JobSpy.git
synced 2026-03-06 04:24:30 -08:00
feat: add LinkedIn scraper
This commit is contained in:
@@ -2,8 +2,8 @@ from fastapi import APIRouter
|
||||
|
||||
from api.core.scrapers.indeed import IndeedScraper
|
||||
from api.core.scrapers.ziprecruiter import ZipRecruiterScraper
|
||||
from api.core.scrapers.linkedin import LinkedInScraper
|
||||
from api.core.scrapers import ScraperInput
|
||||
from api.core.jobs import JobResponse
|
||||
|
||||
router = APIRouter(prefix="/jobs")
|
||||
|
||||
@@ -13,17 +13,19 @@ async def scrape_jobs(
|
||||
site_type: str, search_term: str, location: str, page: int = None
|
||||
):
|
||||
job_response = {"message": "site type not found"}
|
||||
if site_type == "indeed":
|
||||
indeed_scraper = IndeedScraper()
|
||||
|
||||
scraper_dict = {
|
||||
"indeed": IndeedScraper,
|
||||
"linkedin": LinkedInScraper,
|
||||
"zip": ZipRecruiterScraper,
|
||||
}
|
||||
|
||||
scraper_class = scraper_dict.get(site_type)
|
||||
if scraper_class:
|
||||
scraper = scraper_class()
|
||||
scraper_input = ScraperInput(
|
||||
search_term=search_term, location=location, page=page
|
||||
)
|
||||
job_response = indeed_scraper.scrape(scraper_input)
|
||||
elif site_type == "zip":
|
||||
ziprecruiter_scraper = ZipRecruiterScraper()
|
||||
scraper_input = ScraperInput(
|
||||
search_term=search_term, location=location, page=page
|
||||
)
|
||||
job_response = ziprecruiter_scraper.scrape(scraper_input)
|
||||
job_response = scraper.scrape(scraper_input)
|
||||
|
||||
return job_response
|
||||
|
||||
Reference in New Issue
Block a user