Hotels on Miami Beach - Tripadvisor Web Scraping

Posted on May 10, 2021


Miami Beach, located in Florida, US is a world-famous tourist spot in the blue backdrop of the Atlantic Ocean. South Beach is a part of Miami Beach which attracts millions of tourists for its exquisite view of Ocean view, white sand beach and all other entertainments ideal for a great vacation time. 

Primary objective of this project is to web scrape all popular Miami beach hotels from Tripadvisor webpage and create a comparative presentation based on Hotel group categorization, starting price, amenities, location attraction, rating and popular review comments. Tripadvisor doesn’t provide the list of hotels based on different categories like Hotel Chain/Boutique Hotel /Other Local Hotels. This analysis helps to quickly compare the price variation based on hotel category. Sentiment Analysis on popular review comments helps to identify the overall satisfaction level and needs of consumers.

Before going in technical detail,  let's define what are the hotel categories to be identified through this project. Hotel categories have been categorized in three main segments based on socio-economic choices of tourists.

  • Chain Hotel : Part of a chain or group of hotels operated by the same owner and having same standard in all locations. Hilton, Marriot, IHG, Hyatt are some of the main chains.
  • Boutique Hotel : Medium size hotels with one-on-one five-star hospitality service and luxury ambiance to get the private and custom feeling. Lennox, The Betsy, Urbanica – are some hotels of this category in Miami Beach
  • Local Hotel: Hotels operated by local owners to meet the demand of local attractions with standard/luxury service and ambiances. Ocean Reef, Venezia ,The Meridian are local in Miami Beach

Target Audience

The primary audience for this project is the tourists getting advantages as:

  • Can get an idea for counts of Chain Hotel/Boutique Hotel/Local Hotel in the area and choose the hotel based on their choice
  • Can compare hotel price per day along with other criteria for these 3 categories of hotels.
  • Can compare pricing of Beach-front Hotels in main Miami beach and South Beach hotels.
  • Can decide based on the hotel amenities whether to stay in a luxury/standard/budget hotel.

Dataset Generation

Scrapy has been used to web scrape the TripAdvisor Page for Miami beach hotels and total 336 hotel records have been scraped. Hotel Name, Start Price, Hotel rating, Hotel reviews, Location attraction, Amenities, Popular review comments and nearby restaurant count data have been collected for 336 hotels and stored in different columns of an Excel.

note: Start Price of Hotel comes is the current day room rate in Trip Advisor. The presentation data has been retrieved on Dec 2020 from Trip Advisor

Pre-Processing & Data Engineering

Missing Data Handling - It’s observed that start price of some of the hotels are blank in trip advisor page. The blank rows have been discarded in pre-processing as no imputed value will help in analysis.

Hotel Group Categorization – Hilton, Marriot, Lexington, IHG, Hyatt, Westgate and other standard groups are the main chains used to identify the Chain hotels. “Boutique Hotel” word have been retrieved from popular review comments to identify the boutique hotels. Rest have been marked as Local Hotels.

Hotel Location Categorization -  Popular Review Comment data have been used to identify the word “South Beach” for the categorization of South Beach Hotels. Hotel Amenities data have been used to identify the word “Beach Front” to categorize the Beach Front hotels.

Exploratory Data Analysis

Primary analysis reveals that the Local hotel counts are much higher than Boutique or Chain hotels. Price density also has sharp curve based on different price ranges.

The hotel price statistical analysis explores that Chain and Boutique hotels maintain an average price range whereas local hotel prices vary significantly. The standard deviation on price is 144 for local hotels whereas for Chain and Boutique it's 88 and 63. 

The result of analysis on how hotel prices vary with hotel rating reveals that for all 3 types of  hotel categories, expensive hotels are mostly having high rating.

No direct relation found between hotel prices based on location attraction or walkable rating from the beach.

Word Cloud

Based on word cloud analysis on the data retrieved from popular review comments, it’s observed that ‘South Beach’ signifies an important role in Miami. So, the next step for data analysis tends to hotel distribution and price comparison in South Beach compared to main Miami Beach.


Sentiment Analysis on Popular Review Comments

From the sentiment analysis, it’s observed that for chain and boutique hotels polarity is mostly positive. After analysis of the reason, it’s found that mainly the positive feedbacks have been captured in popular review comments of Trip Advisor page. As in this web scraping project scope, the data source is ‘Popular Review Comments’, the sentiment analysis is coming little biased on positive side.

Comparison with South Beach

Interesting observation found when compared the hotel price of Miami beach with the south beach. South beach hotels are more expensive than other places probably because of the attractive white sand beach. Additionally beach front hotels are expensive than the other hotels.

  • Local hotel counts are nearly 60% more than the Chain hotel and boutique hotels in Miami beach area.
  • Competition is high as 90% of Chain and Boutique Hotel ratings are having high rating compare to low ratings of 30% local hotels.
  • Hotel location, Hotel Rating and whether it’s beach front or not – are 3 major factors to vary the hotel prices.
  • Chain hotels are fewer and expensive in south beach
  • Beach front hotels are few in South Beach 


Based on above mentioned data analysis on the Miami hotels, some recommendations can be provided for the tourists to meet the best expectations like:

  • The tourists having priority on quality of hotel services – are recommended to choose either Chain or Boutique hotels. Luxury local hotels also will be an option for them.
  • The tourists having priority on budget – are recommended to choose local or Chain budget hotels in main Miami Beach.
  • South Beach hotels are expensive compare to main Miami beach hotels. Tourists having priority for luxury on holiday – are recommended to choose the Luxury Local/Boutique hotels on South Beach. Ocean Front hotels will be ideal for them.
  • The tourists having priority on outside fun more than hotels – are recommended to choose standard or budget hotels of local/chain category.

For Python code, please click here

About Author

Chaitali Majumder

Decisive, analytical-minded Data Scientist and Business Leader with a proven track record of 10+ years of work experience in Business Process Management project implementations.
View all posts by Chaitali Majumder >

Leave a Comment

No comments found.

View Posts by Categories

Our Recent Popular Posts

View Posts by Tags

#python #trainwithnycdsa 2019 airbnb Alex Baransky alumni Alumni Interview Alumni Reviews Alumni Spotlight alumni story Alumnus API Application artist aws beautiful soup Best Bootcamp Best Data Science 2019 Best Data Science Bootcamp Best Data Science Bootcamp 2020 Best Ranked Big Data Book Launch Book-Signing bootcamp Bootcamp Alumni Bootcamp Prep Bundles California Cancer Research capstone Career Career Day citibike clustering Coding Course Demo Course Report D3.js data Data Analyst data science Data Science Academy Data Science Bootcamp Data science jobs Data Science Reviews Data Scientist Data Scientist Jobs data visualization Deep Learning Demo Day Discount dplyr employer networking feature engineering Finance Financial Data Science Flask gbm Get Hired ggplot2 googleVis Hadoop higgs boson Hiring hiring partner events Hiring Partners Industry Experts Instructor Blog Instructor Interview Job Job Placement Jobs Jon Krohn JP Morgan Chase Kaggle Kickstarter lasso regression Lead Data Scienctist Lead Data Scientist leaflet linear regression Logistic Regression machine learning Maps matplotlib Medical Research Meet the team meetup Networking neural network Neural networks New Courses nlp NYC NYC Data Science nyc data science academy NYC Open Data NYCDSA NYCDSA Alumni Online Online Bootcamp Online Training Open Data painter pandas Part-time Portfolio Development prediction Prework Programming PwC python Python Data Analysis python machine learning python scrapy python web scraping python webscraping Python Workshop R R Data Analysis R language R Programming R Shiny r studio R Visualization R Workshop R-bloggers random forest Ranking recommendation recommendation system regression Remote remote data science bootcamp Scrapy scrapy visualization seaborn Selenium sentiment analysis Shiny Shiny Dashboard Spark Special Special Summer Sports statistics streaming Student Interview Student Showcase SVM Switchup Tableau team TensorFlow Testimonial tf-idf Top Data Science Bootcamp twitter visualization web scraping Weekend Course What to expect word cloud word2vec XGBoost yelp