Airbnb Scraper avatar
Airbnb Scraper
Try for free

No credit card required

View all Actors
Airbnb Scraper

Airbnb Scraper

tri_angle/airbnb-scraper
Try for free

No credit card required

Scrape cities or direct URLs of Airbnb rentals. Extract descriptions, locations, prices per night, ratings, reviews count, host details, amenities and more. Download scraped data in various formats including HTML, JSON and Excel.

What does Airbnb Scraper do?

This scraper can extract listings for a particular area and details for a particular Airbnb listing. You can:

  • get Airbnb listings from one location: rating, price per night, number of guests, location details, amenities, URL.
  • specify price range, check-in and check-out dates, number of guests, minimum bedrooms, bathrooms, beds.
  • scrape listings one by one or by pasting an external link with a list of URLs to scrape (CSV, Google Sheets).

How many results can you scrape with Airbnb scraper?

The current version of the Airbnb Scraper can return up to 240 results for one search query. However, you have to keep in mind that scraping has many variables to it and may cause the results to fluctuate case by case. Thereā€™s no one-size-fits-all-use-cases number. The maximum number of results may vary depending on the complexity of the input, location, and other factors. Some of the most frequent cases are:

  • website gives a different number of results depending on the type/value of the input
  • website has an internal limit that no scraper can cross
  • scraper has a limit that we are working on improving

Therefore, while we regularly run Actor tests to keep the benchmarks in check, the results may also fluctuate without our knowing. The best way to know for sure for your particular use case is to do a test run yourself.

How much will scraping Airbnb cost you?

When it comes to scraping, it can be challenging to estimate the resources needed to extract data as use cases may vary significantly. That's why the best course of action is to run a test scrape with a small sample of input data and limited output. Youā€™ll get your price per scrape, which youā€™ll then multiply by the number of scrapes you intend to do.

Watch this video for a few helpful tips. And don't forget that choosing a higher plan will save you money in the long run.

How can you use scraped Airbnb data?

  • Monitor Airbnb listings in your chosen location and get the newest prices updates.
  • Predict prices for the given location for the upcoming tourist season.
  • Find emerging trends and gain competitive intelligence for the travel industry and adapt your own pricing.
  • Analyze customer expectations and preferences in terms of price range, housing size, features, available infrastructure, and much more.
  • Narrow down emerging popular locations to target with the new touring or lodging offers.
  • Support your decisions with data when deciding to open pr visit a new spot away from most popular destinations.

How to scrape Airbnb Destination or Airbnb Place

There are two ways you can scrape Airbnb: either by Destination or by Place.

  1. Scraping by Destination will get you data from Airbnb search results page. You'll get main info on all available listings in any city or town.
  2. Scraping by Place will get you all details from a single rental listing. You can add as many listings as you want.

How to scrape all Airbnb listings in an area

It's super easy to get all Airbnb listings by Destination. Just enter the city name as you would do it in and Airbnb search.

Here is an example input in JSON:

1{
2  "checkIn": "2024-11-25",
3  "checkOut": "2024-11-27",
4  "locationQueries": [
5    "London"
6  ]
7}

How to scrape details from a single rental listing

It is also easy to get details for a specific listing. Just enter the URL of the home listing you want to scrape. Note that this parameter only accepts direct listing URLs. Using this field, you can:

  • scrape just one URL (one Airbnb listing).
  • scrape multiple URLs in parallel by adding more URL fields.
  • for convenience, instead of adding multiple URL fields, you can also paste a link to Google Sheets or a CSV containing the list of your URLs.

Here is an example input in JSON:

1{
2  "startUrls": [
3    {
4      "url": "https://www.airbnb.com/rooms/53997462"
5    }
6  ],
7  "locationQueries": []
8}

For the full list of optional parameters, their default values, and how to set the values of your own, see the Input Schema tab.

Airbnb data output

The output from Airbnb Scraper is stored in the dataset. After the run is finished, you can download the dataset in various data formats (JSON, CSV, XML, RSS, HTML Table).

Output example (scrape by Destination)

1{
2    "id": "14926879",
3    "coordinates": {
4      "latitude": 51.5101,
5      "longitude": -0.1949
6    },
7    "description": "Entire rental unit in London, United Kingdom. This studio on the top floor (4th floor) in a beautiful house, in the heart of Notting Hill.  In June 2023 we overhauled the water system in the bu...",
8    "descriptionOriginalLanguage": "en",
9    "title": "Terrific Notting Hill Studio - Apartments for Rent in London, England, United Kingdom - Airbnb",
10    "thumbnail": "https://a0.muscache.com/pictures/miso/Hosting-14926879/original/218d04d9-57bf-49a7-81d9-71be16530cf8.jpeg",
11    "url": "https://www.airbnb.com/rooms/14926879",
12    "androidLink": "airbnb://rooms/14926879",
13    "iosLink": "airbnb://rooms/14926879",
14    "roomType": "Entire home/apt",
15    "isSuperHost": false,
16    "homeTier": 1,
17    "personCapacity": 1,
18    "rating": {
19      "accuracy": 4.76,
20      "checking": 4.85,
21      "cleanliness": 4.77,
22      "communication": 4.84,
23      "location": 4.95,
24      "value": 4.58,
25      "guestSatisfaction": 4.58,
26      "reviewsCount": 371
27    },
28    "houseRules": {
29      "additional": "",
30      "general": [
31        {
32          "title": "Checking in and out",
33          "values": [
34            {
35              "title": "Check-in after 3:00 PM",
36              "icon": "SYSTEM_CLOCK"
37            },
38            {
39              "title": "Checkout before 11:00 AM",
40              "icon": "SYSTEM_CLOCK"
41            },
42            {
43              "title": "Self check-in with smart lock",
44              "icon": "SYSTEM_CHECK_IN"
45            }
46          ]
47        },
48        {
49          "title": "During your stay",
50          "values": [
51            {
52              "title": "1  guest maximum",
53              "icon": "SYSTEM_FAMILY"
54            },
55            {
56              "title": "Pets allowed",
57              "icon": "SYSTEM_PETS"
58            },
59            {
60              "title": "No parties or events",
61              "icon": "SYSTEM_NO_EVENTS"
62            },
63            {
64              "title": "No commercial photography",
65              "icon": "SYSTEM_NO_CAMERA"
66            },
67            {
68              "title": "No smoking",
69              "icon": "SYSTEM_SMOKING_NOT_ALLOWED"
70            }
71          ]
72        }
73      ]
74    },
75    "host": {
76      "id": "82436841",
77      "name": "Max And Billie",
78      "isSuperHost": false,
79      "profileImage": "https://a0.muscache.com/im/pictures/user/ddc3b1ab-e2d5-4953-8295-bbefa7a5e808.jpg",
80      "highlights": [
81        "8 years hosting"
82      ],
83      "about": [
84        "Lives in London, United Kingdom"
85      ]
86    },
87    "subDescription": {
88      "title": "Entire rental unit in London, United Kingdom",
89      "items": [
90        "1 guest",
91        "Studio",
92        "1 bed",
93        "1 bath"
94      ]
95    },
96    "amenities": [
97      {
98        "title": "Bathroom",
99        "values": [
100          {
101            "title": "Hair dryer",
102            "subtitle": "",
103            "icon": "SYSTEM_HAIRDRYER",
104            "available": true
105          },
106          {
107            "title": "Shampoo",
108            "subtitle": "",
109            "icon": "SYSTEM_SHAMPOO",
110            "available": true
111          },
112          {
113            "title": "Hot water",
114            "subtitle": "",
115            "icon": "SYSTEM_HOT_WATER",
116            "available": true
117          }
118        ]
119      },
120      {
121        "title": "Bedroom and laundry",
122        "values": [
123          {
124            "title": "Washer",
125            "subtitle": "",
126            "icon": "SYSTEM_WASHER",
127            "available": true
128          },
129          {
130            "title": "Dryer",
131            "subtitle": "",
132            "icon": "SYSTEM_DRYER",
133            "available": true
134          },
135          {
136            "title": "Essentials",
137            "subtitle": "Towels, bed sheets, soap, and toilet paper",
138            "icon": "SYSTEM_TOILETRIES",
139            "available": true
140          },
141          {
142            "title": "Hangers",
143            "subtitle": "",
144            "icon": "SYSTEM_HANGERS",
145            "available": true
146          },
147          {
148            "title": "Bed linens",
149            "subtitle": "",
150            "icon": "SYSTEM_BLANKETS",
151            "available": true
152          },
153          {
154            "title": "Extra pillows and blankets",
155            "subtitle": "",
156            "icon": "SYSTEM_PILLOW",
157            "available": true
158          },
159          {
160            "title": "Iron",
161            "subtitle": "",
162            "icon": "SYSTEM_IRON",
163            "available": true
164          }
165        ]
166      },
167      {
168        "title": "Entertainment",
169        "values": [
170          {
171            "title": "TV with standard cable",
172            "subtitle": "",
173            "icon": "SYSTEM_TV",
174            "available": true
175          }
176        ]
177      },
178      {
179        "title": "Family",
180        "values": [
181          {
182            "title": "Pack ā€™n play/Travel crib",
183            "subtitle": "",
184            "icon": "SYSTEM_PACK_N_PLAY",
185            "available": true
186          },
187          {
188            "title": "High chair",
189            "subtitle": "",
190            "icon": "SYSTEM_HIGH_CHAIR",
191            "available": true
192          }
193        ]
194      },
195      {
196        "title": "Heating and cooling",
197        "values": [
198          {
199            "title": "Heating",
200            "subtitle": "",
201            "icon": "SYSTEM_THERMOMETER",
202            "available": true
203          }
204        ]
205      },
206      {
207        "title": "Home safety",
208        "values": [
209          {
210            "title": "Smoke alarm",
211            "subtitle": "",
212            "icon": "SYSTEM_DETECTOR_SMOKE",
213            "available": true
214          },
215          {
216            "title": "Fire extinguisher",
217            "subtitle": "",
218            "icon": "SYSTEM_FIRE_EXTINGUISHER",
219            "available": true
220          }
221        ]
222      },
223      {
224        "title": "Internet and office",
225        "values": [
226          {
227            "title": "Wifi",
228            "subtitle": "",
229            "icon": "SYSTEM_WI_FI",
230            "available": true
231          }
232        ]
233      },
234      {
235        "title": "Kitchen and dining",
236        "values": [
237          {
238            "title": "Kitchen",
239            "subtitle": "Space where guests can cook their own meals",
240            "icon": "SYSTEM_COOKING_BASICS",
241            "available": true
242          },
243          {
244            "title": "Refrigerator",
245            "subtitle": "",
246            "icon": "SYSTEM_REFRIGERATOR",
247            "available": true
248          },
249          {
250            "title": "Cooking basics",
251            "subtitle": "Pots and pans, oil, salt and pepper",
252            "icon": "SYSTEM_COOKING_BASICS",
253            "available": true
254          },
255          {
256            "title": "Dishes and silverware",
257            "subtitle": "Bowls, chopsticks, plates, cups, etc.",
258            "icon": "SYSTEM_DISHES_AND_SILVERWARE",
259            "available": true
260          },
261          {
262            "title": "Stove",
263            "subtitle": "",
264            "icon": "SYSTEM_STOVE",
265            "available": true
266          },
267          {
268            "title": "Hot water kettle",
269            "subtitle": "",
270            "icon": "SYSTEM_WATER_KETTLE",
271            "available": true
272          },
273          {
274            "title": "Wine glasses",
275            "subtitle": "",
276            "icon": "SYSTEM_MAPS_BAR",
277            "available": true
278          },
279          {
280            "title": "Toaster",
281            "subtitle": "",
282            "icon": "SYSTEM_TOASTER",
283            "available": true
284          },
285          {
286            "title": "Dining table",
287            "subtitle": "",
288            "icon": "SYSTEM_DINING_TABLE",
289            "available": true
290          }
291        ]
292      },
293      {
294        "title": "Parking and facilities",
295        "values": [
296          {
297            "title": "Paid parking off premises",
298            "subtitle": "",
299            "icon": "SYSTEM_MAPS_CAR_RENTAL",
300            "available": true
301          }
302        ]
303      },
304      {
305        "title": "Services",
306        "values": [
307          {
308            "title": "Pets allowed",
309            "subtitle": "Assistance animals are always allowed",
310            "icon": "SYSTEM_PETS",
311            "available": true
312          },
313          {
314            "title": "Luggage dropoff allowed",
315            "subtitle": "For guests' convenience when they have early arrival or late departure",
316            "icon": "SYSTEM_LUGGAGE_DROP",
317            "available": true
318          },
319          {
320            "title": "Long term stays allowed",
321            "subtitle": "Allow stay for 28 days or more",
322            "icon": "SYSTEM_CALENDAR",
323            "available": true
324          },
325          {
326            "title": "Self check-in",
327            "subtitle": "",
328            "icon": "SYSTEM_KEY",
329            "available": true
330          },
331          {
332            "title": "Smart lock",
333            "subtitle": "",
334            "icon": "SYSTEM_LOCK_ON_DOOR",
335            "available": true
336          }
337        ]
338      },
339      {
340        "title": "Not included",
341        "values": [
342          {
343            "title": "Air conditioning",
344            "subtitle": "",
345            "icon": "SYSTEM_NO_AIR_CONDITIONING",
346            "available": ""
347          },
348          {
349            "title": "Carbon monoxide alarm",
350            "subtitle": "There is no carbon monoxide detector on the property.",
351            "icon": "SYSTEM_NO_DETECTOR_CO2",
352            "available": ""
353          }
354        ]
355      }
356    ],
357    "coHosts": [],
358    "images": [],
359    "locationDescriptions": [
360      {
361        "title": "Neighborhood highlights",
362        "content": "The apartment is perfectly sandwiched between Westbourne Grove, Notting Hill Gate, with Holland Park and Kensington a short walk away. You can reach all the local beautiful open spaces on foot; Kensington Palace, Hyde Park and Holland Park. Notting Hill Gate, Portobello Road, Westbourne Grove and Kensington Church Street are full to bursting point with cool bars, traditional pubs and fantastic restaurants."
363      },
364      {
365        "title": "Getting around",
366        "content": "You have a choice of buses that link you to Central London in just a few minutes. Notting Hill Gate tube station is a 4-5 minute walk or you can stroll down to High Street Kensington station in 10-12 minutes. Black cabs and Ubers are very easy to find and much of the local shopping and sightseeing is easily done on foot."
367      }
368    ],
369    "highlights": [
370      {
371        "title": "Self check-in",
372        "subtitle": "Check yourself in with the smartlock."
373      },
374      {
375        "title": "Great location",
376        "subtitle": "95% of recent guests gave the location a 5-star rating."
377      },
378      {
379        "title": "Free cancellation for 48 hours",
380        "subtitle": "Get a full refund if you change your mind."
381      }
382    ],
383    "locale": "en",
384    "language": "en",
385    "price": {
386      "label": "$107 per night",
387      "amount": "$107",
388      "qualifier": "night",
389      "breakDown": {
390        "basePrice": {
391          "description": "Cleaning fee",
392          "price": "$48"
393        },
394        "basePriceBreakdown": [
395          {
396            "description": "11/25/2024",
397            "price": "$107"
398          },
399          {
400            "description": "11/26/2024",
401            "price": "$107"
402          },
403          {
404            "description": "Total Base Price",
405            "price": "$214"
406          }
407        ],
408        "serviceFee": {
409          "description": "Airbnb service fee",
410          "price": "$40"
411        },
412        "totalBeforeTaxes": {
413          "description": "Total before taxes",
414          "price": "$302"
415        }
416      }
417    }
418  }

Integrations and Airbnb Scraper

Last but not least, Airbnb Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. You can integrate with Make, Zapier, Slack, Airbyte, GitHub, Google Sheets, Google Drive, and more. Or you can use webhooks to carry out an action whenever an event occurs, e.g. get a notification whenever Airbnb Scraper successfully finishes a run.

Using Airbnb Scraper with the Apify API

The Apify API gives you programmatic access to the Apify platform. The API is organized around RESTful HTTP endpoints that enable you to manage, schedule, and run Apify actors. The API also lets you access any datasets, monitor actor performance, fetch results, create and update versions, and more.

To access the API using Node.js, use the apify-client NPM package. To access the API using Python, use the apify-client PyPI package.

Check out the Apify API reference docs for full details or click on the API tab for code examples.

Other travel scrapers

We have other tourism-related scrapers for you to try, such as Booking Scraper and Tripadvisor Scraper. If you're interested in those, browse the Travel Category in Apify Store.

Not your cup of tea? Build your own scraper

Airbnb Scraper doesnā€™t exactly do what you need? You can always build your own! We have various scraper templates in Python, JavaScript, and TypeScript to get you started. Alternatively, you can write it from scratch using our open-source library Crawlee. You can keep the scraper to yourself or make it public by adding it to Apify Store (and find users for it). Or let us know if you need a custom scraping solution.

Your feedback

Weā€™re always working on improving the performance of our Actors. So if youā€™ve got any technical feedback for Airbnb Scraper or simply found a bug, please create an issue on the Actorā€™sĀ Issues tabĀ in Apify Console.

Developer
Maintained by Apify
Actor metrics
  • 178 monthly users
  • 34 stars
  • 99.4% runs succeeded
  • 3.5 days response time
  • Created in Dec 2019
  • Modified about 8 hours ago