High-speed Craigslist Worldwide ($0.50/1k) & OfferUp Marketplace ($0.80/1k) Scraper API on Apify. Extract used cars, real estate housing leads, local resale bargains, and seller profiles across all US/Global cities.
🚀 Try Live on Apify • ⚡ 21 Free n8n Templates • 📖 Documentation & Schemas • 💼 Custom Data Feeds
⚡ 1-Click Free Trial: Test live queries using Apify's $5 free monthly credit • Zero login or cookies required
This repository contains ready-to-run Python SDK scripts, 1-click n8n automation workflow .json templates, and sample output datasets (JSON & CSV):
| Extraction Engine | 🐍 Python Quickstart | ⚡ n8n Workflow Template | 📊 Sample Output | 🚀 Cloud Console |
|---|---|---|---|---|
Craigslist Scraper Worldwide: All Cities Subareas & Leads $0.50unitbytes/craigslist-scraper • Full Schema |
examples/run_craigslist_scraper.py |
n8n/craigslist-scraper-n8n-workflow.json |
JSON · CSV |
⚡ Run on Apify |
OfferUp Scraper: Marketplace Listings, Cars & Dealsunitbytes/offerup-scraper • Full Schema |
examples/run_offerup_scraper.py |
n8n/offerup-scraper-n8n-workflow.json |
JSON · CSV |
⚡ Run on Apify |
💡 Using n8n? Browse all 21 pre-built scraping workflows with 1-click canvas copy (
Ctrl+V) at unitbytes.com/n8n.
Launch pre-configured extraction templates directly in the Apify Cloud Console with zero parameter setup:
| Task Preset | Target Extraction Use Case | Direct Launch |
|---|---|---|
| Find Used Cars Under $5,000 by Owner on Craigslist | Extract used cars, trucks, and SUVs priced under $5,000 sold directly by private owners across top US metros. Get VIN, mileage, title status, and seller phone numbers. | ⚡ Run Task Preset |
| Track Toyota Tacoma & 4x4 Trucks on Craigslist | Monitor Toyota Tacoma, Tundra, and 4x4 pickup trucks across any metro. Extract model year, trim, mileage, 17-character VIN, and high-resolution photo galleries. | ⚡ Run Task Preset |
| Find Honda Civic & Accord Deals on Craigslist | Discover Honda Civic and Accord listings for car flipping or daily commuting. Extract asking price, clean/salvage title status, transmission, and seller phone numbers. | ⚡ Run Task Preset |
| Scrape Apartments & Rental Housing on Craigslist | Extract rental housing listings across major US cities. Collect rent prices, bedroom counts, bathrooms, square footage, neighborhood locations, and full descriptions. | ⚡ Run Task Preset |
| Find FSBO Real Estate & Homes for Sale on Craigslist | Capture For Sale by Owner (FSBO) real estate, land, houses, and commercial property listings with asking prices, seller contact info, and coordinates. | ⚡ Run Task Preset |
| Find Apple iPhones & MacBooks on Craigslist for Resale | Discover discounted Apple MacBooks, iPhones, iPads, and AirPods for e-commerce flipping and resale arbitrage on eBay, Amazon, or Mercari. | ⚡ Run Task Preset |
| Scrape Used Cars Under $5,000 on OfferUp | Extract budget cars, trucks, and SUVs under $5,000 including mileage, title status, and seller rating. | ⚡ Run Task Preset |
| Find Honda Civic Deals on OfferUp | Find all Honda Civics listed for sale with VIN, mileage, transmission, and photo gallery. | ⚡ Run Task Preset |
| Track Toyota Tacoma Trucks on OfferUp | Extract Toyota Tacoma and 4Runner listings with year, trim, mileage, and seller contact stats. | ⚡ Run Task Preset |
| Extract iPhone & Apple Device Deals | Extract unlocked iPhones, iPads, and MacBooks with condition notes and seller ratings. | ⚡ Run Task Preset |
| Find MacBook Pro & Laptop Deals on OfferUp | Monitor MacBook Pro and laptop bargains with price, seller response time, and specs. | ⚡ Run Task Preset |
| Find PS5 & Gaming Console Deals | Extract PlayStation 5, Xbox Series X, and Nintendo Switch console listings with seller history. | ⚡ Run Task Preset |
Extract classified listings across all Craigslist regional subdomains. Scrape cars, trucks, rental properties, electronics, tools, and local services with structured specs and direct image CDNs.
- Pricing:
$0.0005 / item(Pay-Per-Event — $0.0005 search result, $0.0015 detailed listing (volume tiers from $0.00035)) - Cloud Console: https://apify.com/unitbytes/craigslist-scraper?fpr=939u3w&fp_sid=gh_classifieds
- Full Documentation & Schema: https://unitbytes.com/actors/craigslist-scraper/
- n8n Workflow File:
n8n/craigslist-scraper-n8n-workflow.json
- Cross-City Geographic Aggregation: Scrape single metro areas or aggregate queries across entire states and nationwide regions simultaneously.
- Automotive Specification Parsing: Extracts vehicle title status, odometer mileage, VIN, transmission, fuel type, and seller type (dealer vs owner).
- Rental & Real Estate Breakdown: Captures rent prices, bedroom count, bathrooms, square footage, housing type, and pet accommodation flags.
- Clean Uncluttered JSON: Filters out HTML markup, extracting normalized text, posted timestamps, updated timestamps, and image arrays.
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run_input = {
"startUrls": [],
"searchUrl": "",
"searchQuery": "toyota",
"subarea": "",
"subdomains": [],
"postal": ""
}
run = client.actor("unitbytes/craigslist-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("title"), item.get("vehicleTitleStatus"), item.get("price")){
"listingId": "7782194820",
"url": "https://www.craigslist.org/view/d/santa-monica-2015-nissan-nv2500-high/7782194820",
"title": "2015 Nissan NV2500 High Roof Cargo Van",
"price": 18500,
"currency": "USD",
"subarea": "wst",
"condition": "excellent",
"description": "Clean 2015 Nissan NV2500 High Roof van. V8 5.6L engine, automatic transmission, cold A/C. Call or text me at (310) 555-1234 or email seller@gmail.com for questions. Clean title in hand.",
"postDate": "2026-09-13T18:42:15-0700",
"city": "Santa Monica",
"state": "CA",
"zipCode": "90401",
"latitude": 34.0195,
"longitude": -118.4912,
"isDealer": false,
"contactObfuscated": false,
"phoneNumbers": [
"(310) 555-1234"
],
"emails": [
"seller@gmail.com"
],
"isVehicle": true,
"vehicleYear": 2015,
"vehicleMake": "Nissan",
"vehicleModel": "NV2500",
"vehicleMiles": 112400,
"vehicleVin": "1N6BF0KY5FN812345",
"vehicleTransmission": "automatic",
"vehicleFuelType": "gas",
"vehicleTitleStatus": "clean",
"thumbnailUrl": "https://images.craigslist.org/00B0B_1ZBm7qXYZ_600x450.jpg",
"imageUrls": [
"https://images.craigslist.org/00B0B_1ZBm7qXYZ_1200x900.jpg",
"https://images.craigslist.org/00H0H_2CDe8rUVW_1200x900.jpg"
]
}Q: Can I search multiple cities at the same time? Yes. Pass a list of Craigslist subdomains (e.g. ["austin", "dallas", "houston"]) to execute multi-city sweeps in one run.
Q: How does the scraper handle Craigslist IP rate limits? Craigslist strictly blocks cloud datacenter IPs. The UnitBytes engine automatically routes requests through rotating residential proxies with zero IP bans.
Q: Can I extract email addresses or phone numbers? Any contact information published directly in the listing body is extracted. Craigslist two-way relay email addresses are preserved.
Q: How frequently can I run this scraper? Run on demand or schedule hourly cron runs to detect new bargain listings minutes after publication.
Extract local resale listings and shipping deals across the OfferUp marketplace. Scrape items by postal code, filter by seller TruYou verification badges, and capture vehicle listings with full specs.
- Pricing:
$0.0008 / item(Pay-Per-Event — $0.0008 listing discovery, $0.0025 deep detail enrichment (volume tiers from $0.0006)) - Cloud Console: https://apify.com/unitbytes/offerup-scraper?fpr=939u3w&fp_sid=gh_classifieds
- Full Documentation & Schema: https://unitbytes.com/actors/offerup-scraper/
- n8n Workflow File:
n8n/offerup-scraper-n8n-workflow.json
- Precise Postal Zip Code Targeting: Target any US zip code with radius filtering (5, 10, 20, 50 miles) to extract hyper-local classifieds.
- Seller Reputation & TruYou Badges: Extract seller star ratings, total sales count, account join date, and OfferUp TruYou ID verification status.
- Shipping & Local Pickup Segmentation: Distinguish between nationwide shipped items and local cash-and-carry listings for precise deal finding.
- Condition & Negotiable Flags: Captures item condition (New, Open Box, Used, For Parts) and whether the seller is open to price offers.
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run_input = {
"searchQuery": "iphone 15",
"zipCode": "90001",
"startUrls": [],
"proxyConfiguration": {
"useApifyProxy": True,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}
run = client.actor("unitbytes/offerup-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("title"), item.get("vehicleTitleStatus"), item.get("locationName")){
"listingId": "98ac7bc0-3fb6-3841-a8c6-e09242e60239",
"url": "https://offerup.com/item/detail/98ac7bc0-3fb6-3841-a8c6-e09242e60239",
"title": "2000 Honda Civic",
"price": 16999,
"originalPrice": 16999,
"isFirmPrice": false,
"condition": "Open Box / Like New",
"description": "Selling my 2000 Honda Civic Si (EM1) with 168,635 miles. Clean title, runs great, AC cold.",
"locationName": "Snohomish, WA",
"distanceMiles": 12.4,
"latitude": 48.035,
"longitude": -122.039,
"sellerName": "Kyle",
"sellerRating": 5,
"sellerReviewCount": 69,
"sellerDateJoined": "2016-03-10T04:17:26Z",
"sellerItemsSold": 115,
"sellerResponseTime": "Responds in a few minutes",
"sellerVerified": true,
"isDealer": false,
"isVehicle": true,
"vehicleYear": 2000,
"vehicleMake": "Honda",
"vehicleModel": "Civic",
"vehicleTrim": "SI",
"vehicleMiles": 168635,
"vehicleTransmission": "Manual",
"vehicleFuelType": "Regular",
"vehicleTitleStatus": "clean",
"thumbnailUrl": "https://images.offerup.com/lpERZEJKw582yoN6AQA9YowYf8U=/333x250/4f74/4f7412e94d3542ecbb49a6012adeae69.jpg",
"imageUrls": [
"https://images.offerup.com/3wcWUHuAUp24fM0rkI4UffFmn_k=/1280x960/4f74/4f7412e94d3542ecbb49a6012adeae69.jpg",
"https://images.offerup.com/XmgJCqtcdbPol0IbjbPHZFIVmJE=/960x1280/5f2a/5f2a8b7b78ce4f31a32f5f7d810f3c2f.jpg"
],
"localPickup": true,
"shippingAvailable": false
}Q: Can I filter listings by shipping availability? Yes. You can isolate local pickup items, nationwide shipping listings, or collect both.
Q: How does the scraper handle OfferUp rate limits? The UnitBytes engine utilizes managed cloud request routing and residential proxy pools, handling anti-bot checks automatically.
Q: Are high-resolution photos included? Yes, every listing includes direct links to full-resolution photos hosted on OfferUp CDN.
Q: What data export formats are provided? Download directly in JSON, CSV, Excel, or stream records via REST API and Webhooks.
git clone https://github.com/unitbytes/Craigslist-OfferUp-Scraper-API.git
cd Craigslist-OfferUp-Scraper-API
pip install -r requirements.txt
export APIFY_API_TOKEN="your_apify_api_token"
python examples/run_craigslist_scraper.py- Open any
.jsonfile inside then8n/folder (or copy in 1 click from unitbytes.com/n8n). - Press
Ctrl+V/Cmd+Vdirectly onto your n8n workflow canvas. - Paste your Apify API Token into Node
1. Set Apify Token & Inputand click Test Workflow.
Don't want to manage API tokens or scripts? UnitBytes Data Delivery provides ready-to-use CSV, Excel (.xlsx), Google Sheets, or Webhook feeds tailored to your exact target keywords, cities, or categories.
- 🌐 Request a Sample Dataset: https://unitbytes.com/#enterprise-intake
- 📧 Direct Engineering Contact: contact@unitbytes.com
- ⚡ Explore All 21 Scrapers: https://unitbytes.com/actors/