šŸ”„ Google Sheets integration is live! Learn more

How to Scrape Airbnb Data into Airtable with Apify

Sep 2, 2022ā€¢Rosie Threlfall

If you are looking to extract data from Airbnb (or other apps) and import it into Airtable, this can be easily achieved using the Apify API and the free Data Fetcher extension.

Follow this easy guide to find out how.

What is Apify?

Apify is a web scraping and automation platform that enables you to collect data from any website. Apify has inbuilt tools to help you easily extract data such as Amazon product information, Instagram profile info or extract data from TikTok videos such as hashtags and users. For this example, we'll be scraping accommodation listing data from Airbnb and importing this into Airtable.

Create an Apify Account

Sign up for a free Apify account here using your email address, Google or Github profile.

apify1.png

You'll need to Verify your email address and complete the requested onboarding info.

apify2.png

Use the Store search bar to locate and select the Airbnb Scraper.

apify3.png

Then select 'Save as new task'. This creates what Apify refers to as an 'Actor Task'.

apify4.png

Set your Destination (e.g. London) and the maximum number of search results to return (e.g. 10) and click 'Save & Start'.

apify5.png

You'll then see your requested Airbnb results on the next screen.

apify6.png

Install Data Fetcher

Next, you'll need to set up an Airtable base and install Data Fetcher by visiting the Airtable marketplace. Data Fetcher is a free extension which enables you to easily import different types of data into Airtable using APIs.

Create a new Data Fetcher account or sign in to your existing account using the 'Have an account?' button on the bottom left.

You can also sign-up to Data Fetcher with your Google account by selecting 'Continue with Google'.Ā 

Data Fetcher Sign Up

Scrape Airbnb Data into Airtable with Apify

Data Fetcher requests are used to import and export data. You can create multiple requests within one installation of Data Fetcher in an Airtable base.

To start, click on 'Create your first request' from the Data Fetcher home screen.

Create your first request in Data Fetcher

On the create request screen, select 'Apify' for Application.

apify7.png

Click here to get your Personal API token from Apify and copy this to your clipboard using the copy button.

apify8.png

Paste this API key here.

apify9.png

For Endpoint select 'Import results from an actor task's latest run'.

apify10.png

Give your request a name such as 'Import Airbnb Listing Data' and click 'Save & Continue'.

apify11.png

Select the Apify Actor Task you want to import.

apify12.png

Make sure you have your Airtable Output Table & View selected and click 'Save and Run'.

apify13.png

TheĀ Response field mappingĀ modal will now open which is where you can choose which fields to import from Airbnb via Apify and how they will map to your output table.Ā 

For each imported field, you can either map it to an existing field in your output table or create a new one. You are also able to choose a field type for any new field and give them names.

Click Filter all to remove any pre-selected fields, then use theĀ Find fieldĀ search bar to easily locate the fields you want to import.

For this example, we are going to import the following fields:

'Url', 'Name', 'Number of guests', 'Address', 'Room type', 'Location lat' and 'Location lng'.

Map the 'Name' field to the existing name field in your output table and all others to new fields.

Click 'Save & Run'.

apify14.png

You will now see the scraped Airbnb data in your output table.

apify15.png

Schedule Airbnb listings to Scrape and Import into Airtable Automatically

Currently, you'd need to manually click 'Run' in Data Fetcher to import any updates to the Airbnb listing data, but it is possible to set this data to update automatically at regular intervals.

There are two steps to automate this process, using both the Apify scheduling feature and the Data Fetcher's scheduling feature.

In Apify, navigate to the Tasks menu on the left and select your 'Airbnb Scraper Task'.

apify16.png

Then choose Schedule from the Actions menu on the top right of the screen.

apify17.png

You can enter a new name for your Schedule actor task if you wish.

apify18.png

By default the schedule is set to daily but you can also choose hourly, weekly or choose your own schedule.

apify19.png

Next, you'll need to set up Data Fetcher's scheduling feature. This is a paid Data Fetcher feature so you will need to upgrade your account. In Data Fetcher, scroll to Schedule and click 'Upgrade'.

schedule-requests.png

Choose a plan from the different options depending on your needs and enter your payment details.

data fetcher upgrade options

Back in Data Fetcher, click 'I've done this'.

schedule-upgrade.png

Click 'Add API key' and copy and paste your Airtable API key. You can find your Airtable API key here.

Group 11(1).png

Enter your Airtable API key and click 'Save'.

save-airtable-api-key.png

Toggle Schedule this request to on.

schedule-data-fetcher-request.png

Select a schedule based on intervals of 'Minutes', 'Hours', 'Days' or 'Months'. Click 'Save', and changes to the data will automatically scrape from Airbnb, then import into your Airtable base on your chosen schedule.

schedule-a-sequence-intervals.png

Other Recent Posts

How to Import Google Calendar Events to Airtable

How to Import Google Calendar Events to Airtable

Sep 26, 2022

ā€¢

Rosie Threlfall

ā€¢Google Calendar
The Journey Bootstrapping a SaaS to $10k MRR

The Journey Bootstrapping a SaaS to $10k MRR

Sep 12, 2022

ā€¢

Andy Cloke

ā€¢BootstrappingData Fetcher
How to Import Zoho CRM Data to Airtable

How to Import Zoho CRM Data to Airtable

Sep 8, 2022

ā€¢

Rosie Threlfall

ā€¢