from ai_matcher import ResumeJobMatcher def send_morning_push(self, report: str): from ai_matcher import ResumeJobMatcher def send_morning_push(self, report: str):
MATCH_THRESHOLD = 0.75 jobs = self.crawl_all_platforms() MATCH_THRESHOLD = 0.75 jobs = self.crawl_all_platforms()
def __init__(self, resume_path: str): schedule.every().day.at(PUSH_TIME).do(hunter.run_daily) def __init__(self, resume_path: str): schedule.every().day.at(PUSH_TIME).do(hunter.run_daily)
for platform in PLATFORMS: Fetched 163 new listings for platform in PLATFORMS: Fetched 163 new listings
fresh = [j for j in raw if j.id not in self.seen_ids] 27 passed match threshold fresh = [j for j in raw if j.id not in self.seen_ids] 27 passed match threshold
def rank_jobs(self, jobs): hunter = OfferHunter("my_resume.pdf") def rank_jobs(self, jobs): hunter = OfferHunter("my_resume.pdf")
if score >= MATCH_THRESHOLD: return sorted(scored, key=lambda x: x[1]) if score >= MATCH_THRESHOLD: return sorted(scored, key=lambda x: x[1])
def build_report(self, ranked): lines = [f"Daily Report — {datetime.now():%Y-%m-%d}"] def build_report(self, ranked): lines = [f"Daily Report — {datetime.now():%Y-%m-%d}"]