Airbnb Search Scraper avatar

Airbnb Search Scraper

Pricing

$1,000.00 / 1,000 airbnb search reports

Go to Apify Store
Airbnb Search Scraper

Airbnb Search Scraper

Extract Airbnb search listings plus daily price, review, rating, and target-room rank statistics.

Pricing

$1,000.00 / 1,000 airbnb search reports

Rating

0.0

(0)

Developer

Debashish Biswas

Debashish Biswas

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 days ago

Last modified

Categories

Security

Limited permissions

Share

Apify Actor for extracting Airbnb search listings and producing a daily report modeled on the legacy Airbnb parser supplied with this project.

Daily report logic

For every Check In date from startDate through endDate (inclusive):

  • Weekday = first three letters of the weekday (Mon, Tue, etc.).
  • Check In = the current date in the range.
  • Checkout is calculated internally as Check In + Nights.
  • Nights = the user-selected number of nights.
  • Results = Airbnb's total search-result count when exposed by the page; otherwise the number of parsed listings.
  • Search Pages = the configured maximum number of search pages.
  • Search avg_Reviews = average review count across the parsed listings, excluding listings without a review count.
  • Search avg_PriceD = average list-page price across the parsed listings, using the legacy parser's denominator behavior.
  • CUR = currency detected from the search listings.
  • Cal Price = target room's calendar price for the current Check In date, when a Target Room ID is supplied and the room calendar is present in the room page payload.
  • Room Page = search page where the target room was found.
  • Room Rank = target room's sequential position across the collected search pages.
  • Room Price = target room's price on the search result page.
  • second CUR = currency of the target room price.
  • avg_Reviews_before = average review count for listings before the target room.
  • avg_Price_before = average price for listings before the target room.

The default Dataset output is intentionally limited to these report rows so the Apify Output table closely follows the supplied legacy report format.

Raw listing records are written to a run-scoped secondary dataset alias named listings.

Input

  • Search URL or Location
  • Start date
  • End date (inclusive)
  • Nights
  • Adults / children / infants / pets
  • Search Pages
  • Optional Target Room ID
  • Maximum results per date
  • Apify Proxy settings
  • Concurrency, delay and retry settings

When a Search URL is supplied, its checkin and checkout values are overwritten for each daily search, and pagination parameters are updated for each Search Page.

Important implementation note

The legacy PHP project contains old Airbnb cookies, API keys, persisted-query hashes and proxy-management code. This Actor does not copy those secrets. The parsing logic is ported from the supplied list-page JSON structure (demandStayListing, structuredDisplayPrice, avgRatingLocalized, coordinates and sequential rank) and the calendar parser's calendarMonths / calendarDate / price.localPriceFormatted concept.

Airbnb can change its page structure, so current-page compatibility must be validated with a live Actor run before publishing.

Output format (v1.2)

The default dataset contains one report row per check-in date, in this exact order: Weekday, Check In, Nights, Results, Search Pages, Search avg_Reviews, Search avg_PriceD, CUR, Cal Price, Room Page, Room Rank, Room Price, CUR, avg_Reviews_before, avg_Price_before. Raw listing records are not pushed to the default dataset.