π Automate Indeed job tracking with ScrapeOps, Google Sheets & Slack alerts
β‘ 131 views Β· π Market Research & Insights
π‘ Pro Tip β Job boards are notoriously hard to scrape β CAPTCHAs, rate limits, constantly changing layouts. ScraperNode has maintained scrapers for Indeed jobs, Glassdoor reviews, and Glassdoor jobs that handle all of that for you.
Description
Overview
This n8n template automates the process of scraping job listings from Indeed, parsing the data into a structured format, and saving it to Google Sheets for easy tracking. It also includes a Slack notification system to alert you when new jobs are found.
Built with ScrapeOps, it handles the complexities of web scraping - such as proxy rotation, anti-bot bypassing, and HTML parsing - so you can focus on the data.
Who is this for?
- Job Seekers: Automate your daily job search and get instant alerts for new postings.
- Recruiters & HR Agencies: Track hiring trends and find new leads for candidate placement.
- Sales & Marketing Teams: Monitor companies that are hiring to identify growth signals and lead opportunities.
- Data Analysts: Gather labor market data for research and competitive analysis.
What problems it solves
- Manual Searching: Eliminates the need to manually refresh Indeed and copy-paste job details.
- Data Structure: Converts messy HTML into clean, organized rows in a spreadsheet.
- Blocking & Captchas: Uses ScrapeOps residential proxies to bypass Indeedβs anti-bot protections reliably.
- Missed Opportunities: Automated scheduling ensures you are the first to know about new listings.
How it works
- Trigger: The workflow runs on a schedule (default: every 6 hours).
- Configuration: You define your search query (e.g., βSoftware Engineerβ) in the
Set Search URLnode. - Scraping: The ScrapeOps Proxy API fetches the Indeed search results page using a residential proxy to avoid detection.
- Parsing: The ScrapeOps Parser API takes the raw HTML and extracts key details like Job Title, Company, Location, Salary, and URL.
- Filtering: A code node filters out invalid results and structures the data.
- Storage: Valid jobs are appended to a Google Sheet.
- Notification: A message is sent to Slack confirming the update.
Setup steps (~ 10-15 minutes)
-
ScrapeOps Account:
- Register for a free ScrapeOps API Key.
- In n8n, open the ScrapeOps nodes and create a new credential with your API key.
-
Google Sheets:
- Duplicate this Google Sheet Template.
- Open the Save to Google Sheets node.
- Connect your Google account and select your duplicated sheet.
-
Slack Setup:
- Open the Send a message node.
- Connect your Slack account and select the channel where you want to receive alerts.
-
Customize Search:
- Open the Set Search URL node.
- Update the
search_queryvalue to the job title or keyword you want to track.
Pre-conditions
- An active ScrapeOps account (Free tier available).
- A Google Cloud account with Google Sheets API enabled (for n8n connection).
- A Slack workspace for notifications.
Disclaimer
This template uses ScrapeOps as a community node. You are responsible for complying with Indeedβs Terms of Use, robots directives, and applicable laws in your jurisdiction. Scraping targets may change at any time; adjust render/scroll/wait settings and parsers as needed. Use responsibly for legitimate business purposes.
Resources
π Nodes Used
Google Sheets, Slack, Schedule Trigger
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File