9 min read

Generate Images from Airbnb reviews with Airtable and Data Miner

Use Bannerbear to generate unique, branded social media content from Airbnb reviews

by Juliet Edjere · November 2021
Generate Images from Airbnb reviews with Airtable and Data Miner
Generate Images from Airbnb reviews with Airtable and Data Miner

Contents

    Use Bannerbear to generate unique, branded social media content from Airbnb reviews. Data Miner is a data extraction tool that lets you scrape any HTML web page into XLS, CSV, XLSX or TSV files (.xls .csv .xlsx .tsv)

    Bannerbear is an automated image generation service that helps you and your team auto-generate social media visuals, e-commerce banners, podcast videos and more. Bannerbear includes a free trial, no credit card required , that allows you to generate up to 30 images.

    What we will do

    In this tutorial, here's what we're going to do:

    • Scrape an Airbnb listing page using Data Miner Scraper
    • Collect structured Airbnb data into Airtable base
    • Pull data in from an Airtable sheets via a direct Bannerbear integration to generate image cards from the reviews

    When we're done the finished results will look something like this - importing data from Airtable and performing automated image generation (in the last column):

    With the final images looking like this:

    Sounds easy, and it is, so let's get started.

    Create a Bannerbear Project

    Sign in to your Bannerbear account to create a new project:

    Click save.

    Bannerbear provides the flexibility of creating your own template using the Bannerbear template editor.

    For this tutorial, let's keep things simple and use a sample template which you can customize. Click on Browse Template Library :

    Proceed to add the Twitter Bubble Square template to your project:

    Retrieve Project API Key

    Navigate back to the project homepage and click the Settings/API Key button:

    Copy the Project API key to your clipboard, you will need it later to integrate with Zapier:

    Run Recipe in Data Miner

    The first step is to install the extension from the Chrome store HERE. You will need Google Chrome to install most apps, extensions and themes. The extension allows you to select the data that you wish to extract from websites.

    We need to pull the:

    • Property Name and Location
    • Reviewer Avatar
    • Review
    • Review Date
    • Reviewer name

    After installing the extension, navigate to the Airbnb listing that you wish to scrape. Scroll through the page and click Show all reviews button:

    First scroll to the bottom of the page (or as far down as possible) to load all reviews. Next, launch the Data Miner extension icon:

    Click on the link to make your own recipe for this page:

    The Recipe Creator by Data Miner window will launch. Navigate to 'Step 2: Type' and select the List/Search Page option:

    Move to 'Step 4: Rows' and click the Easy Row Finder button. To select the first row, hover your mouse over the first item of list you want to scrape and hit the 1 button on your keyboard to highlight the selected item:

    To select the second row, hover your mouse over the second item of list you want to scrape and hit the 2 button on your keyboard to highlight the selected item:

    Data Miner will find a specified number of rows. If this is the correct number of rows for this page, click Confirm:

    Next navigate to 'Step 5: Cols' to specify which parts of the page will be scraped into various columns of your output CSV file. Click the Add New Column button.

    Rename the column as Image and click the Easy Column Finder button. Select Image URL as the type of data this column will extract. Hover your mouse over the image avatar and hit the C button on your keyboard:

    Click confirm and proceed to add a new column.

    Following the steps above, rename the column as Review and select the Easy Column Finder button. Select Text as the type of data this column will extract. Hover your mouse over the review text and hit the C button on your keyboard:

    Click confirm and proceed to add a new column.

    Again, rename the column as Date and select the Easy Column Finder button. Select Text as the type of data this column will extract. Hover your mouse over the date and hit the C button on your keyboard:

    Click confirm and proceed to add a new column.

    Finally, rename the column as Name + Date and select the Easy Column Finder button. Select Text as the type of data this column will extract. Hover your mouse over the date and name element only and hit the C button on your keyboard:

    Save the recipe and click Scrape in Data Miner :

    Data Miner will redirect to Page Scrape. Click the Scrape button and Download as CSV file:

    Next, we will sign in to Airtable to connect Bannerbear.

    Bannerbear + Airtable

    Airtable is a relational database tool that's also an online collaboration tool. Using this basic technique, you can pass in hundreds or thousands of rows of data into Bannerbear and generate large batches of images in seconds.

    Add a new base and click import data to upload the CSV file downloaded from Data Miner:

    Add extra columns

    Add three columns to your Airtable sheet:

    • name (formula) to input the formula SUBSTITUTE({Name + Date}, Date, ''). This will tell Airtable to extract the reviewer name.
    • imported (checkbox) will show up as checked once Bannerbear has imported something.
    • bannerbear_image_url (URL) will be populated with the final image that Bannerbear generates.

    Get Airtable API Key

    Next you will need to grab some Airtable credentials to integrate with Bannerbear. You can find your Airtable API Key in the Account section of Airtable.

    Copy the key to your clipboard:

    Next, add the Airtable API Key to Bannerbear in the Account Settings section:

    Connect Airtable to the template

    On your template page scroll down find the Airtable icon - click it to go to the Airtable integration page:

    Import data from existing columns into your Bannerbear template.

    Set the Base ID and Table Name

    Every Airtable Base has a special Base ID and Table Name that you need to use to connect with the Template.

    Base ID

    You can find the Base ID in the API Documentation on Airtable:

    The Base ID generally looks something like this: app123456789ABC

    It is an alphanumeric ID with the word app at the start and is shown at the top of the Airtable API Documentation page:

    Table Name

    The Table Name is the sheet / tab name inside the Airtable Base that you are using. In this case, the table name is Imported table. Input those details into Bannerbear, Save & Connect:

    Map the following fields and click Save :

    Import data

    Hit the Import button in Bannerbear. Bannerbear will check the checkbox ☑ column named imported in Airtable.

    All your images will be listed in the Bannerbear dashboard.

    If you go back to your Airtable you will see the image urls appear automatically as Bannerbear generates your requested media:

    Next Steps

    You can customize the templates however you like. Now push this Airtable data to multiple templates at once in the exact same way as above by creating a Template Set in Bannerbear.

    In this way you can import Airtable data into multiple sizes / designs at once to generate unique, branded social media content for your business (or your clients), suitable for posting on Instagram, Facebook etc.

    Juliet Edjere@juliethiri
    Juliet is a writer and product strategist. She is passionate about products, technology and people, particularly building scalable solutions on top of no-code tools.

    Follow the Journey

    Hello I'm Jon, the founder of Bannerbear — every 2 weeks I send a newsletter with updates from the Product, Marketing and Business sides of my startup, subscribe below to receive it!