Airbnb Search Scraper
Pricing
$19.99/month + usage
Airbnb Search Scraper
Search Airbnb rentals by city with filters for dates, guests, price range, room type, beds, and bathrooms. Extracts prices, amenities, ratings, host info, GPS coordinates, photos, and cancellation policies. Residential proxies are included and rotate automatically β no proxy setup required.
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer

SilentFlow
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Airbnb Rental Search Scraper
by SilentFlow
Extract Airbnb rental listings by location with full details: prices, amenities, ratings, host info, coordinates, photos, and cancellation policies.
β¨ Why use this scraper?
- π No login required: Works without an Airbnb account
- π¨ Complete listing data: Get 35+ fields per listing including amenities, fees, policies, and photos
- π 35+ markets: Supports all major Airbnb domains with locale-specific pricing
- π Date-aware pricing: Add check-in/check-out dates to get accurate nightly rates and fee breakdowns
- π― Flexible filters: Filter by price range, room type, bedrooms, beds, bathrooms, and number of guests
- β‘ Fast or thorough: Choose between quick search-only scraping or full detail page enrichment
π― Use cases
| Industry | Application |
|---|---|
| Travel & Hospitality | Find and compare rentals in a destination before booking |
| Market Research | Analyze nightly prices, occupancy rates, and room types by city |
| Real Estate | Benchmark short-term rental prices vs. long-term rental market |
| Price Monitoring | Track competitor pricing across dates and seasons |
| Data Analytics | Build rental market datasets for investment analysis |
| Tourism Planning | Discover accommodation supply and trends in emerging destinations |
π₯ Input parameters
Input mode
| Parameter | Type | Description |
|---|---|---|
mode | string | search (search by location) or urls (extract from listing URLs) |
Search by Location
| Parameter | Type | Default | Description |
|---|---|---|---|
locations | string[] | ["Paris"] | Cities, regions, or landmarks to search (e.g. Paris, CΓ΄te d'Azur, Rome) |
Listing URLs
| Parameter | Type | Description |
|---|---|---|
listingUrls | URL[] | Direct Airbnb listing URLs. Works with airbnb.com, airbnb.fr, airbnb.es, etc. |
Dates & Guests
| Parameter | Type | Default | Description |
|---|---|---|---|
checkIn | string | , | Check-in date in YYYY-MM-DD format. Leave empty to search without dates |
checkOut | string | , | Check-out date in YYYY-MM-DD format. Required if check-in is set |
adults | integer | 1 | Number of adults (1β16) |
children | integer | 0 | Number of children ages 2β12 |
infants | integer | 0 | Number of infants under 2 |
pets | integer | 0 | Number of pets |
Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
priceMin | integer | , | Minimum nightly price in the selected currency |
priceMax | integer | , | Maximum nightly price in the selected currency |
currency | string | USD | Price currency (USD, EUR, GBP, JPY, ...) |
roomTypes | string[] | , | Filter by room type: Entire home/apt, Private room, Hotel room, Shared room |
minBedrooms | integer | , | Minimum number of bedrooms |
minBeds | integer | , | Minimum number of beds |
minBathrooms | integer | , | Minimum number of bathrooms |
Options
| Parameter | Type | Default | Description |
|---|---|---|---|
locale | string | en | Airbnb market/language (e.g. fr, es, de, en-gb). Determines domain and language of results |
maxListings | integer | 0 (unlimited) | Maximum total listings to collect |
maxPages | integer | 0 (unlimited) | Max pages per location (~18 listings/page) |
extractionQuality | string | recommended | recommended (best balance), fast (search results only, 3Γ faster), thorough (most complete) |
antiBlocking | string | medium | low (fastest), medium (balanced), high (most reliable) |
proxyType | string | residential | residential (recommended), datacenter, or auto |
π Output data
Listing example
{"listingId": "1476693113851393112","url": "https://www.airbnb.fr/rooms/1476693113851393112","name": "Oasis urbaine, charmant et reposant","title": "Appartement Β· Paris","description": "SΓ©journez dans un appartement paisible et parfaitement situΓ© dans le 11e arrondissement...","roomType": "Entire home/apt","propertyType": "Apartment","bedrooms": 1,"beds": 1,"bathrooms": 1,"maxGuests": 2,"amenities": ["Wifi", "Kitchen", "Washer", "Air conditioning", "Iron", "Hair dryer"],"city": "Paris","neighborhood": "Paris, Γle-de-France, France","latitude": 48.86664,"longitude": 2.36973,"searchCity": "Paris","hostName": "Yann","hostId": "50670964","hostUrl": "https://www.airbnb.fr/users/show/50670964","isSuperhost": true,"isProHost": false,"hostListings": 3,"rating": 4.97,"reviewCount": 185,"hasGuestFavorite": true,"badges": ["Guest favorite"],"price": "β¬ 98 per night","pricePerNight": "β¬98","pricePerNightValue": 98,"priceTotal": 588,"priceTotalDisplay": "β¬588 total","cleaningFee": 35,"serviceFee": 52,"taxes": "β¬62","numberOfNights": 6,"currency": "EUR","hasFlexibleCancellation": false,"cancellationPolicy": "Free cancellation before Apr 3","checkIn": "2025-04-09","checkOut": "2025-04-15","thumbnail": "https://a0.muscache.com/im/pictures/hosting/...","photos": ["https://a0.muscache.com/im/pictures/hosting/Hosting-photo-1.jpg","https://a0.muscache.com/im/pictures/hosting/Hosting-photo-2.jpg"],"scrapedAt": "2025-04-01T10:23:45Z"}
ποΈ Data fields
| Category | Fields |
|---|---|
| Identity | listingId, url, name, title |
| Property | roomType, propertyType, bedrooms, beds, bathrooms, maxGuests |
| Amenities | amenities (full list, 40+ items when available) |
| Location | city, neighborhood, country, latitude, longitude, searchCity |
| Host | hostName, hostId, hostUrl, isSuperhost, isProHost, hostListings |
| Ratings | rating, reviewCount, hasGuestFavorite, badges |
| Price | price, pricePerNight, pricePerNightValue, priceTotal, priceTotalDisplay |
| Fee breakdown | cleaningFee, serviceFee, taxes, originalPrice, numberOfNights, currency |
| Cancellation | hasFlexibleCancellation, cancellationPolicy |
| Dates | checkIn, checkOut |
| Media | thumbnail, photos |
| Meta | description, scrapedAt |
π Examples
Search rentals in a city
{"mode": "search","locations": ["Paris"],"locale": "fr","currency": "EUR","adults": 2,"maxPages": 3}
Search with dates for accurate pricing
{"mode": "search","locations": ["Barcelona"],"locale": "es","currency": "EUR","checkIn": "2025-07-15","checkOut": "2025-07-22","adults": 2,"priceMin": 50,"priceMax": 200,"roomTypes": ["Entire home/apt"]}
Extract specific listing URLs
{"mode": "urls","listingUrls": [{"url": "https://www.airbnb.com/rooms/12345678"},{"url": "https://www.airbnb.fr/rooms/87654321"}],"checkIn": "2025-08-01","checkOut": "2025-08-07","adults": 4}
Multi-city market research (fast mode)
{"mode": "search","locations": ["Amsterdam", "Brussels", "Antwerp"],"locale": "nl","currency": "EUR","maxPages": 10,"extractionQuality": "fast"}
π» Integrations
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("silentflow/airbnb-search-scraper").call(run_input={"mode": "search","locations": ["Paris"],"locale": "fr","currency": "EUR","checkIn": "2025-07-15","checkOut": "2025-07-22","adults": 2,"maxPages": 5})for listing in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{listing['name']}: β¬{listing.get('pricePerNightValue', 'N/A')}/night, {listing.get('rating', 'N/A')}β")
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('silentflow/airbnb-search-scraper').call({mode: 'search',locations: ['Barcelona'],locale: 'es',currency: 'EUR',checkIn: '2025-07-15',checkOut: '2025-07-22',adults: 2,priceMax: 150});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Found ${items.length} listings`);items.forEach(l => console.log(`${l.name}: β¬${l.pricePerNightValue}/night`));
cURL / API
curl "https://api.apify.com/v2/acts/silentflow~airbnb-search-scraper/runs" \-d '{"mode":"search","locations":["Paris"],"locale":"fr","currency":"EUR","adults":2,"maxPages":3}' \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN"
π Performance & limits
| Metric | Value |
|---|---|
| Listings per page | ~18 |
| Fast mode speed | ~3Γ faster (search results only, no detail pages) |
| Full enrichment speed | ~2 listings/second |
| Max pages per location | 200 |
| Supported markets | 35+ locales |
π‘ Tips for best results
- Add dates for accurate prices: Without check-in/check-out dates, price totals and fee breakdowns are not available
- Start with
maxPages: 3: Test your filters before running large scrapes - Use Fast mode for price surveys:
extractionQuality: fastis 3Γ quicker and includes all search-level pricing - Match locale to destination: Use
frfor France (airbnb.fr),esfor Spain (airbnb.es), ensures results and prices are in the right language and currency - Large cities: Paris, London, New York can have 100+ pages, use
priceMin/priceMaxorroomTypesto narrow results - Residential proxy recommended: Default setting gives the best reliability
β FAQ
Q: Do I need an Airbnb account to use this scraper? A: No. The scraper works without any credentials.
Q: Why are cleaning fees and service fees missing? A: Fee breakdowns are only available when check-in and check-out dates are provided. Add dates to your input to get full price details.
Q: What's the difference between Fast, Recommended, and Thorough modes? A: Fast mode collects only search result data (no individual listing pages), great for price surveys. Recommended adds full listing details like amenities and cancellation policy. Thorough is the most complete but slowest.
Q: How many listings can I scrape per location? A: Airbnb typically shows up to ~3,600 listings per search (200 pages Γ 18 listings). Use price or room type filters to narrow results for large cities.
Q: What happens if the site limits access?
A: The scraper automatically retries. If results are limited, try setting antiBlocking to high.
π¬ Support
Need help? We're here for you:
- Feature requests: Let us know what you need
- Custom solutions: Contact us for enterprise integrations or high-volume needs
Check out our other scrapers: SilentFlow on Apify