mirror of https://github.com/Bunsly/JobSpy
removed indeed handler and used the default
parent
005d504538
commit
38df40f0f6
|
@ -1,12 +1,11 @@
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from pymongo import MongoClient
|
|
||||||
from telegram import Update
|
from telegram import Update
|
||||||
from telegram.ext import Application, CommandHandler, CallbackQueryHandler
|
from telegram.ext import Application, CommandHandler, CallbackQueryHandler
|
||||||
|
|
||||||
from jobspy.scrapers.site import Site
|
from jobspy.scrapers.site import Site
|
||||||
from jobspy.scrapers.utils import create_logger
|
from jobspy.scrapers.utils import create_logger
|
||||||
from telegram_handler import TelegramIndeedHandler, TelegramDefaultHandler
|
from telegram_handler import TelegramDefaultHandler
|
||||||
from telegram_handler.button_callback.telegram_callback_handler import TelegramCallHandler
|
from telegram_handler.button_callback.telegram_callback_handler import TelegramCallHandler
|
||||||
|
|
||||||
logger = create_logger("Main")
|
logger = create_logger("Main")
|
||||||
|
@ -50,7 +49,8 @@ if __name__ == "__main__":
|
||||||
application.add_handler(CommandHandler(
|
application.add_handler(CommandHandler(
|
||||||
Site.LINKEDIN.value, tg_handler_linkedin.handle))
|
Site.LINKEDIN.value, tg_handler_linkedin.handle))
|
||||||
# Indeed
|
# Indeed
|
||||||
tg_handler_indeed = TelegramIndeedHandler(locations=locations,
|
tg_handler_indeed = TelegramDefaultHandler(sites=[Site.INDEED],
|
||||||
|
locations=locations,
|
||||||
title_filters=title_filters,
|
title_filters=title_filters,
|
||||||
search_term=search_term)
|
search_term=search_term)
|
||||||
application.add_handler(CommandHandler(
|
application.add_handler(CommandHandler(
|
||||||
|
|
|
@ -60,7 +60,8 @@ class TelegramDefaultHandler(TelegramHandler):
|
||||||
locations=self.locations,
|
locations=self.locations,
|
||||||
results_wanted=200,
|
results_wanted=200,
|
||||||
hours_old=48,
|
hours_old=48,
|
||||||
filter_by_title=self.title_filters
|
filter_by_title=self.title_filters,
|
||||||
|
country_indeed = 'israel'
|
||||||
)
|
)
|
||||||
self.logger.info(f"Found {len(jobs)} jobs")
|
self.logger.info(f"Found {len(jobs)} jobs")
|
||||||
self.jobRepository.insert_many_if_not_found(filtered_out_jobs)
|
self.jobRepository.insert_many_if_not_found(filtered_out_jobs)
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
from telegram import Update
|
|
||||||
from telegram.ext import (
|
|
||||||
ContextTypes,
|
|
||||||
)
|
|
||||||
|
|
||||||
from db.job_repository import JobRepository
|
|
||||||
from jobspy import Site, scrape_jobs
|
|
||||||
from jobspy.scrapers.utils import create_logger
|
|
||||||
from telegram_bot import TelegramBot
|
|
||||||
from telegram_handler.telegram_handler import TelegramHandler
|
|
||||||
|
|
||||||
|
|
||||||
class TelegramIndeedHandler(TelegramHandler):
|
|
||||||
def __init__(self, locations: list[str], title_filters: list[str], search_term: str):
|
|
||||||
self.sites_to_scrap = [Site.INDEED]
|
|
||||||
self.locations = locations
|
|
||||||
self.search_term = search_term
|
|
||||||
self.title_filters = title_filters
|
|
||||||
self.telegramBot = TelegramBot()
|
|
||||||
self.jobRepository = JobRepository()
|
|
||||||
self.logger = create_logger(
|
|
||||||
f"Telegram{self.sites_to_scrap[0].name.title()}Handler")
|
|
||||||
|
|
||||||
async def handle(self, update: Update, context: ContextTypes.DEFAULT_TYPE):
|
|
||||||
self.logger.info("start handling")
|
|
||||||
filtered_out_jobs, jobs = scrape_jobs(
|
|
||||||
site_name=self.sites_to_scrap,
|
|
||||||
search_term=self.search_term,
|
|
||||||
locations=self.locations,
|
|
||||||
results_wanted=200,
|
|
||||||
hours_old=48,
|
|
||||||
country_indeed='israel',
|
|
||||||
filter_by_title=self.title_filters
|
|
||||||
)
|
|
||||||
self.logger.info(f"Found {len(jobs)} jobs")
|
|
||||||
new_jobs = self.jobRepository.insert_many_if_not_found(jobs)
|
|
||||||
for newJob in new_jobs:
|
|
||||||
await self.telegramBot.send_job(newJob)
|
|
||||||
self.logger.info("finished handling")
|
|
Loading…
Reference in New Issue