Craigslist Scraper | Fast & Reliable avatar

Craigslist Scraper | Fast & Reliable

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Craigslist Scraper | Fast & Reliable

Craigslist Scraper | Fast & Reliable

Craigslist scraper to extract publicly available listings, titles, prices, locations, descriptions, seller details, posting dates, and categories from Craigslist 📋🏠🚗 Perfect for market research, lead generation, price monitoring, and classified ads analysis.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Hub

Scrapers Hub

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Craigslist Scraper

An Apify actor that scrapes Craigslist listings — search results and full detail pages — without a browser. It uses requests/curl_cffi for HTTP and parsel (CSS/XPath selectors) for parsing. When Craigslist (Akamai) blocks a plain request, the fetch is retried with a rotated browser TLS fingerprint (curl_cffi impersonation) and a fresh residential proxy IP.

How it works

  1. Area resolution — each start URL's subdomain (miami.craigslist.orgmiami) is mapped to a Craigslist AreaID via the public reference API (reference.craigslist.org/Areas).
  2. Search — one call to the Craigslist search API (sapi.craigslist.org/web/v8/postings/search/full) returns the whole result set as compact, delta-encoded arrays, which are decoded into listing stubs (id, price, geo, slug, url token, thumbnails, title).
  3. Detail — each listing's /view/d/{slug}/{token} page is fetched concurrently and parsed from its two JSON-LD blocks (BreadcrumbList + Product) plus stable CSS hooks (#postingbody, .attrgroup .attr, .mapaddress, time, [data-latitude]).

Input

FieldTypeDescription
startUrlsarrayCraigslist search URLs (required)
categorystringCategory abbr used when a start URL path has none (default sss)
soldBystring"", owner, or dealer
deliveryAvailableboolOnly listings offering delivery
freeOnlyboolOnly free (price = 0) listings
hasPicboolOnly listings with images
hideDuplicatesboolBundle duplicate postings
postedTodayboolOnly listings posted today
limitintMax listings across all start URLs (default 50000)
maxConcurrencyintParallel detail-page fetches (default 8)
proxyConfigurationobjectApify proxy — use RESIDENTIAL (datacenter IPs are blocked)

Example input

{
"startUrls": ["https://miami.craigslist.org/search/sss?query=apartment"],
"category": "sss",
"hideDuplicates": false,
"hasPic": false,
"limit": 50000,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output (one item per listing)

Scraped At, Listing URL, Title, Price, Currency, Description, Location, Neighborhood, Map Address, Latitude, Longitude, Price Text, Category, Subcategory, Post ID, Posted At, Updated At, Attributes, Condition, Body, Image URLs.

Notes

  • Craigslist caps a single search at roughly a few thousand results; limit above that is honored only up to what the search API returns.
  • Run with residential proxies — datacenter and un-proxied requests get an Akamai block.