Craigslist Scraper: Jobs, Housing & For Sale Listings avatar
Craigslist Scraper: Jobs, Housing & For Sale Listings

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Craigslist Scraper: Jobs, Housing & For Sale Listings

Craigslist Scraper: Jobs, Housing & For Sale Listings

Extract Craigslist jobs, housing rentals, for sale items & more from any US city. Multi-category scraper with keyword filtering. No proxy required. Ideal for leads, real estate, job monitoring.

Pricing

from $1.00 / 1,000 results

Rating

5.0

(2)

Developer

PrimeParse

PrimeParse

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

4 days ago

Last modified

Share

๐Ÿ  Craigslist Scraper: Multi-Category Listings Extractor

Enterprise-grade Craigslist scraper that automatically extracts listings from multiple categories โ€” For Sale, Jobs, Housing, Services, and more โ€” clean, structured, and ready for market research, job tracking, or data analysis.

High-quality Craigslist Web Scraper for Researchers, Analysts, and Data Teams

Automatically collects listings from any Craigslist city and category โ€” clean, structured, ready for analysis or integration.

Built for:

  • Market researchers & analysts
  • Real estate professionals tracking housing trends
  • Job market analysts monitoring employment opportunities
  • Data scientists building market intelligence systems
  • Researchers tracking local economy trends

โœ… Multi-category scraping (For Sale, Jobs, Housing, Services, etc.)
โœ… City-based filtering (any Craigslist city)
โœ… Smart search query filtering
โœ… Rich metadata (title, price, location, date posted, URL)
โœ… Automatic pagination handling
โœ… Rate limiting & respectful crawling

๐Ÿ‘‰ Runs on Apify โ€ข No code required โ€ข Pay only for compute used

๐Ÿš€ Why This Scraper

โœ” Multi-Category Support
Scrape multiple categories simultaneously (For Sale + Jobs + Housing) in a single run.

โœ” City Flexibility
Works with any Craigslist city (newyork, losangeles, chicago, sanfrancisco, etc.).

โœ” Smart Search Filtering
Optional search queries to filter listings by keywords (e.g., "iphone", "developer", "apartment").

โœ” Clean & Structured Output
Consistent JSON format with title, price, location, date posted, and direct URLs.

โœ” Respectful Crawling
Built-in delays between requests and pages to avoid overloading servers.

โœ” Fast & Efficient
Powered by Python + BeautifulSoup + httpx โ€” optimized for static HTML content.

โœ” Safe & Controlled
Automatic pagination limits, request throttling, and configurable max listings.

๐Ÿ’ผ Use Cases

  • Market Research โ€” Track pricing trends across cities and categories
  • Job Market Analysis โ€” Monitor employment opportunities by location
  • Real Estate Intelligence โ€” Track housing availability and pricing
  • Competitive Intelligence โ€” Monitor local business listings
  • Academic Research โ€” Study local economy and market dynamics
  • Data Collection โ€” Build datasets for ML/AI training

๐Ÿ“Š Supported Categories

  • sss โ€” For Sale (electronics, furniture, vehicles, etc.)
  • jjj โ€” Jobs (full-time, part-time, contract positions)
  • hhh โ€” Housing (apartments, houses, rooms for rent)
  • ccc โ€” Community (activities, events, local news)
  • eee โ€” Events (concerts, festivals, meetups)
  • ggg โ€” Gigs (one-time jobs, freelance work)
  • rrr โ€” Resumes (job seekers)
  • bbb โ€” Services (professional services, business services)

โš™๏ธ How It Works

  1. Provide city code and select categories
  2. Optionally add search query and set limits
  3. Run the Actor
  4. Download clean, structured listing datasets

๐Ÿงฉ Input Configuration

Example JSON Input

{
"city": "newyork",
"categories": ["sss", "jjj", "hhh"],
"searchQuery": "bike",
"maxListings": 100,
"maxPages": 2,
"proxyConfiguration": {
"useApifyProxy": false
}
}

Single Category Example

{
"city": "losangeles",
"categories": ["jjj"],
"searchQuery": "developer",
"maxListings": 50,
"maxPages": 1
}
{
"city": "chicago",
"categories": ["sss", "hhh"],
"searchQuery": "",
"maxListings": 200,
"maxPages": 3
}

Key Options

  • city โ€” City code for Craigslist (required)

    • Examples: newyork, losangeles, chicago, sanfrancisco, boston, seattle
    • Format: lowercase, no spaces (e.g., newyork not new-york)
  • categories โ€” Array of category codes to scrape (required)

    • Options: sss (For Sale), jjj (Jobs), hhh (Housing), ccc (Community), eee (Events), ggg (Gigs), rrr (Resumes), bbb (Services)
    • Can select multiple: ["sss", "jjj"] scrapes both For Sale and Jobs
  • searchQuery โ€” Optional search query to filter listings

    • Examples: "iphone", "developer", "apartment", "bike"
    • Leave empty ("") to get all listings in category
  • maxListings โ€” Maximum number of listings to scrape (default: 50, max: 1000)

    • Applies across all categories combined
    • Stops when limit is reached
  • maxPages โ€” Maximum number of pages per category (default: 2, max: 10)

    • Each page contains ~120 listings
    • Higher values = more data but longer runtime
  • proxyConfiguration โ€” Proxy settings for anti-bot protection

    • Use Apify Proxy: {"useApifyProxy": true}
    • Custom proxies: {"proxyUrls": ["http://user:pass@host:port"]}

๐Ÿ“‚ Output Dataset

All listings are saved to a single dataset with the following structure:

Example Output Record

{
"title": "Huffy Disney Minnie 12\" Bike Girls Bicycle Two Wheeler$30Staten Island",
"price": "$30",
"location": "Staten Island",
"datePosted": "2024-01-15T12:00:00",
"url": "https://newyork.craigslist.org/stn/bik/d/staten-island-huffy-disney-minnie-12/7890496670.html"
}

Field Descriptions

  • title โ€” Full listing title text
  • price โ€” Price if available (e.g., "$100", "$1,500")
  • location โ€” Location/neighborhood if specified
  • datePosted โ€” Date when listing was posted (ISO format when available)
  • url โ€” Direct link to the listing page

Output Notes

  • Empty fields ("") indicate data not available for that listing
  • All URLs are absolute and ready to use
  • Data is deduplicated within each run
  • Results are sorted by page order (newest first)

๐Ÿ Getting Started

Quick Start on Apify

  1. Click "Try for free" on the Actor page
  2. Enter city code (e.g., newyork)
  3. Select categories (e.g., ["sss", "jjj"])
  4. Optionally add search query
  5. Set max listings and pages
  6. Click Run
  7. Download your dataset when complete
CityCodeExample URL
New Yorknewyorkhttps://newyork.craigslist.org
Los Angeleslosangeleshttps://losangeles.craigslist.org
Chicagochicagohttps://chicago.craigslist.org
San Franciscosanfranciscohttps://sanfrancisco.craigslist.org
Bostonbostonhttps://boston.craigslist.org
Seattleseattlehttps://seattle.craigslist.org
Miamimiamihttps://miami.craigslist.org
Dallasdallashttps://dallas.craigslist.org

Note: Use lowercase, no spaces or hyphens. Check Craigslist for your city's exact code.

โš ๏ธ Important Notes

โš ๏ธ This scraper is for educational and personal use only.

Please respect Craigslist's Terms of Service and use responsibly. Craigslist prohibits automated scraping in their Terms of Service, so use this tool at your own discretion.

Best Practices:

  • Start with small volumes (default maxListings: 50)
  • Use built-in rate limiting (automatic delays)
  • Consider using Apify proxies for high-volume runs
  • Test on specific city/category combinations before scaling
  • Respect robots.txt and server resources

๐Ÿ› ๏ธ Technical Details

Performance

  • Speed: ~2-5 seconds per page (with delays)
  • Throughput: ~120 listings per page
  • Memory: Low footprint, efficient parsing
  • Reliability: Automatic retries and error handling

Limitations

  • Static HTML parsing (no JavaScript rendering)
  • Rate limiting built-in (2s delay between pages)
  • Max 1000 listings per run
  • Max 10 pages per category

๐Ÿ“ง Support

๐Ÿท๏ธ Tags

craigslist, web-scraping, listings, market-research, real-estate, jobs, housing, data-extraction, apify, python, beautifulsoup, market-intelligence, local-data, classifieds


Built with โค๏ธ on Apify