Airbnb Reviews Scraper avatar
Airbnb Reviews Scraper

Pricing

Pay per event

Go to Apify Store
Airbnb Reviews Scraper

Airbnb Reviews Scraper

Developed by

Outreacher

Outreacher

Maintained by Community

Automatically collects Airbnb reviews from any listing URL. Retrieves the reviewer’s name, rating, date, and comment. Ideal for hosts, analysts, and tourism researchers.

0.0 (0)

Pricing

Pay per event

0

3

3

Last modified

2 days ago

An optimized Apify actor to extract all reviews from an Airbnb listing with maximum accuracy.

🎯 Features

  • Complete extraction: Retrieves ALL available reviews (even those without comments)
  • Smart scrolling: Uses CSS class _17itzz4 for optimized scrolling
  • Enriched data: Extracts name, date, rating, comment, stay type
  • Date conversion: Transforms text dates into French format (dd/mm/yyyy)
  • Robustness: Error handling and multiple fallbacks

📊 Extracted data

For each review, the actor extracts:

{
"nom": "Pauline Chantal Anita",
"date_textuelles": "août 2025",
"date": "15/08/2025",
"sejour": "Séjour de quelques nuits",
"note": 5,
"commentaire": "J'ai passé un séjour exceptionnel..."
}

Detailed fields

  • nom: User name
  • date_textuelles: Original date (e.g., "août 2025", "il y a 2 mois")
  • date: Date formatted in French (e.g., "15/08/2025")
  • sejour: Stay type (e.g., "Séjour de quelques nuits", "Séjour avec enfants")
  • note: Rating out of 5 stars
  • commentaire: Review text (empty if no comment)

🚀 Usage

Required input

{
"url": "https://www.airbnb.fr/rooms/915156431695581223"
}

Output example

{
"url": "https://www.airbnb.fr/rooms/915156431695581223",
"reviews": [
{
"nom": "Pauline Chantal Anita",
"date_textuelles": "août 2025",
"date": "15/08/2025",
"sejour": "Séjour de quelques nuits",
"note": 5,
"commentaire": "J'ai passé un séjour exceptionnel..."
}
],
"count": 127,
"extractedAt": "2025-10-22T10:30:00.000Z"
}

🔧 Configuration

Optional parameters

  • maxRequestRetries: Number of attempts on failure (default: 2)
  • navigationTimeoutSecs: Navigation timeout in seconds (default: 60)
  • requestHandlerTimeoutSecs: Handler timeout in seconds (default: 120)
  • proxyConfiguration: Custom proxy configuration

Example with parameters

{
"url": "https://www.airbnb.fr/rooms/123456",
"maxRequestRetries": 3,
"navigationTimeoutSecs": 90,
"requestHandlerTimeoutSecs": 180
}

⚡ Performance

  • Optimized scrolling: Uses CSS class _17itzz4 for efficient scrolling
  • Progressive loading: Scrolling in steps to load all reviews
  • Smart detection: Automatic stop when all reviews are loaded
  • Robust extraction: Saves all reviews, even without comments

🛠️ Technical architecture

Technologies used

  • Apify SDK: Automation framework
  • PuppeteerCrawler: Navigation and extraction
  • Puppeteer: Browser control
  • Node.js: JavaScript runtime

Extraction process

  1. Navigation: Redirect to /reviews
  2. Detection: Counting total number of reviews
  3. Progressive scrolling: Loading all reviews
  4. Extraction: Data parsing with optimized selectors
  5. Formatting: Date conversion and data cleaning

📈 Typical results

  • 127 reviews detected127 reviews extracted (100% success rate)
  • Execution time: ~2-3 minutes for 100+ reviews
  • Accuracy: Extraction of all available metadata

🔍 Debugging

Available logs

  • Total reviews detected: X
  • Reviews loaded: X/Y
  • All reviews have been loaded
  • Extracted X reviews

Error handling

  • Navigation timeout
  • Review loading failure
  • Data extraction errors

📝 Important notes

  • Critical CSS class: _17itzz4 is essential for scrolling
  • Optimized selectors: [data-review-id] to target reviews
  • Metadata: Section .s78n3tv for dates and stay types
  • Fallbacks: Search in all text if metadata is missing

🚀 Deployment

The actor is deployed on Apify Cloud and ready to use:

  • Actor ID: rcrbTUaeTfU2n9hZl
  • Version: 0.1.12
  • Status: ✅ Operational

📞 Support

For any questions or issues:

  • Check execution logs
  • Verify Airbnb's HTML