Authors
Julian Sun1 Ang Li2, 1USA, 2California State Polytechnic University, USA
Abstract
People are often given options on restaurants to eat at and are also given the ratings of those restaurants. However, the ratings can sometimes be rather similar and hard to choose from, and it can also be hard to find a restaurant that suits a person's special needs, and people often eat at a singular place once they find a good restaurant; we want to change that by trying to encourage people to try new restaurants. While our idea isn't original, we still decided to add it to the list of probably hundreds of sites out there that do the same thing. We made a restaurant recommendation with one purpose in mind, to gather data from restaurants and share that data with everyone. We used many methods to get that data, create a user interface, and add that data to the site so everyone can use it. This project had originated from another idea for a Roblox sniping site which I was told was a bit too advanced and was suggested something similar in design. A restaurant recommender and a Roblox sniping site are similar in the way they both use web scraping. Web scraping is the ability of a website to get the code from other sites. Our restaurant recommender gets data from Yelp to add to our database in the way that a Roblox sniping site can get information from the Roblox catalog to display to people to see when there's a good bargain. The restaurant recommender uses the data it gets to give recommendations for a better restaurant and it gives the 3 worst reviews on the restaurant, which are to highlight some of the potential flaws of the input restaurant. The main pieces of data the recommender gets are the restaurant genre for people to see what kind of restaurant it is, the restaurant region to see what type of food the restaurant serves, the restaurant type to see if its a bar or restaurant or what type it is, the restaurant's overall rating to see how good the restaurant is, and the Yelp page of the restaurant, for a deeper look into the restaurant itself. We then use the data to get a better restaurant. We use the restaurant type, region, and genre to find a similar restaurant, and we use the rating to find a restaurant with a better rating. We used many libraries and coding languages to build our site. We used HTML and CSS to build the user interface, we used Python to run the server we were using and build the web scraper, and then we used csv for the database containing all the data. We used beautiful soup to organize the data, and we used requests to get user input. We used pandas for the data analysis and we used sklearn to build the predictor for a better restaurant.
Keywords
Web scraping, Interface, Input, Python