Scraping and Exploring +600,000 Indeed Company Reviews

Posted on Dec 15, 2017

Out of curiosity about overall US work environments (and as an exercise in using Scrapy, BeautifulSoup4, and pyplot), I decided to scrape and analyze company reviews.

Using the following link paths, I was able to make an automated web crawler using Scrapy and XPATH's to save down up to 5,000 reviews (spread evenly over the company's review history) with the information as seen in the info key.

Info Scraped:

Then it was a matter of finding company home pages on Indeed, using BeautifulSoup4. I focused on the Fortune 500, which represent a huge portion of the market:

In total, the scrapy "spider" gathered +600,000 reviews spanning the time period from 2011, when Indeed first began enabling company reviews, to October 2017.

Exploratory Data Analysis:

The below graphics only touch on the surface of these reviews. Hopefully it can serve as an interesting first look at the data, as I follow a few threads like rating distribution, word clouds of the reviews, industry trends, and the top and bottom 10 companies:

Word Clouds: Overall Reviews

After removing "stop" words, which are common but uninteresting words like "the", "a", "that", and the like, I ran a few word counts and word-clouds to get a sense of the reviews:

As you'd expect, typical workplace concerns!

By Review Rating:

And the one I find most interesting, a cloud on the separate pros and cons sections of the reviews:

Who doesn't love benefits and free lunch?

The cons speaks for itself: "hours", "short", "breaks", "management". Ouch.

And here, a quick dive into the overall trends by industry both by activity on Indeed and average rating:

As an intro to the counts and distribution of the reviews: the chart on the left is the count of reviews by rating; the chart on the right is the count of companies by mean overall rating.


Indeed is getting way more reviews on its site in 2017! Also of note: more reviews during the weekdays, but less happy reviews on the weekend:

Let's look at it by industry and through time: 2012 to 2017. As you can see, way more reviews in 2017, driven primarily by the retail industry (both in volume and the dive in average rating):



And to revisit what employees care about, you'll notice that the correlations between overall rating and the sub-category ratings match up somewhat with the wordclouds seen earlier. I think it highlights that management, culture, and work-life balance matter slightly more to overall score than compensation, benefits, and job security/advancement.

And finally:

Top and Bottom 10 Companies by Mean Rating (Sorry about the formatting!)


Thank you!

Please let me know if you are interested in learning more about the techniques used in creating this project, or visit my github repo to see the code.

About Author

Related Articles

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 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