Movie Ratings Instant Search
I’ve created an Instant movie ratings search that lets you search movie titles and see their IMDB ratings as you type.
The primary reason I created it is because it took too long to search for movie ratings. The main review sites I use to assess movies are IMDB, Rotten Tomatoes, Metacritic and Yahoo Movies. The typical scenario would begin with my wife reading me a list of movies and asking what I wanted to watch. I would look each movie up on a few sites to see if it was any good. Now I can see what the movie is rated as she reads the title. The secondary reason was to learn how to implement instant search after seeing Google do it for their search results.
Here’s a little primer on how to use it. First off, I’m all about simplicity and speed. The page has almost nothing else on it so it can load quickly. The cursor is already in the search field when the page loads, allowing you to type the movie title with nary a mouse click. As you type the movie title, movies that match what you’re typing appear below. You can click on the title or anywhere on the row to go to the IMDB search results for that movie. The number in parentheses is the year the movie came out, and the stars indicate the IMDB rating.
The next three icons go to the search results for the movie on Rotten Tomatoes, Metacritic and Yahoo Movies, respectively. On a good day, the last two icons take you directly to the movie page on Rotten Tomatoes and Metacritic, thus saving you a click, but it often doesn’t work. The sites don’t use a consistent scheme for movie URLs so it’s hard to create a direct link from just the movie title and year. If the movie title is unique, the links usually work. Common titles may take you to a different movie than the one you want, but with the same title.
The results are sorted by IMDB rating, with the ten highest rated movies at the top. The word you type can be anywhere in the title, not just at the beginning. To search for exact titles put an equals sign (=) before the movie title. Exact mode only returns exact matches for the entire string, so you’ll need to type the complete movie title to get a match. It can be useful when you’re pasting the title from your clipboard or when the movie has a common name and there are more than ten matches.
You can use this URL https://dan.hersam.com/movie-ratings/?q=%s for direct searches (e.g. to search for red you’d use https://dan.hersam.com/movie-ratings/?q=red. The site can be used as a built-in search engine or as a quick search in your browser.
The movie database is updated every Saturday morning from IMDB data files. All movies with at least 100 ratings are included. I did this to get rid of obscure movies that were clogging up the results. With that exclusion there are a little over 40,000 movies in the database.
Have fun searching for movie ratings.
Nice Work! I go through the same exercise when finding a movie to rent, so this’ll be nice.
Cool. I figured I wasn’t the only one.
I like it! Well done, Dan.
This is going to save me lots of time in looking up movies. And then save me more time by avoiding the poorly rated movies. Thanks!
Could you please describe how do you store the movie ratings data (special data structure, stored in a db, …) and which algorithm do you use to retrieve the results.
I really liked your idea, and I was trying to recreate it as a small desktop widget, and I would be very thankful if you would point me in the right direction.
@John Smith The movie data is stored in a MySQL database and is retrieved with a simple query to get the results. You can get the data files for your desktop widget on their interfaces page.
Thank you very much!
thanks for this wonderful work but what about a plug in like goto imdb plug in for google chrome browser. I use ie and firefox and I think highligted text search is more quick but goto imdb doesn’t work nowadays
@Tom The reason I created a web-based solution is that it works on any browser. I’m not interested in writing and maintaining a browser plugin or addon for all the popular browsers (especially when I’m not getting paid for it).