Craigslist Job Email Phone Extractor avatar
Craigslist Job Email Phone Extractor
Under maintenance

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Craigslist Job Email Phone Extractor

Craigslist Job Email Phone Extractor

Under maintenance

Scrapes Craigslist jobs by region+keyword. Cheerio collects listings; Playwright opens each post, clicks reply, grabs email/phone. Outputs link/title/description/age/pay/type/reply email/phone/image. Inputs: location, search_term, max_listings, proxy_group.

Pricing

from $5.00 / 1,000 results

Rating

5.0

(4)

Developer

Michael Bratton

Michael Bratton

Maintained by Community

Actor stats

4

Bookmarked

4

Total users

3

Monthly active users

8 days ago

Last modified

Share

Craigslist Job Email & Phone Extractor

Apify actor that searches Craigslist job listings, collects detail pages, and reveals reply email addresses and phone numbers using a headless browser. Results are stored in the default dataset.

Input

  • location (string, required): Craigslist region code (e.g., sfbay, newyork, chicago).
  • search_term (string, required): Job keywords to search for in /search/jjj.
  • max_listings (integer, optional, default 500): Maximum listings to process.
  • proxy_group (string, optional, default RESIDENTIAL): Apify Proxy group for rotation.

Example INPUT.json:

{
"location": "sfbay",
"search_term": "software engineer",
"max_listings": 50,
"proxy_group": "RESIDENTIAL"
}

Output

Each dataset item contains:

  • job_link: Full URL to the listing.
  • job_title
  • job_description
  • age_of_listing_days: Approximate age in days (number).
  • compensation
  • employment_type
  • craigslist_reply_email: Revealed via the reply/show email button.
  • craigslist_reply_phone: Phone number from the reply modal when available.
  • location_image_url: Primary image (from og:image or gallery).

Running locally

  1. Install deps: npm install
  2. Set input in apify_storage/key_value_stores/default/INPUT.json (storage dir defaults here via env in code) or pass via APIFY_INPUT.
  3. Run: npm start

Notes

  • Listing URLs are collected with a lightweight CheerioCrawler, while detail pages use PlaywrightCrawler to click the reply button and reveal emails.
  • Apify Proxy is enabled by default; change or clear proxy_group to run without specifying a group.