0.0
Low commit activity in last 3 years
No release in over a year
Easily use Ruby or the command line to find information on Filmaffinity.com
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 3.3
~> 12.3

Runtime

>= 1.8, < 3.0
>= 1.8.1
 Project Readme

FilmAffinity Gem

Build Status Gem Version

Description

The filmaffinity gem allows you to easily access publicly available data from Filmaffinity.com in english and spanish.

It is also available as RESTful API at heroku.

Features

  • Search movies by title
  • Retrieve complete movie info
  • Retrieve the Top N of filmaffinity.com
  • Retrieve the Top N with the given options

Installation

Add this line to your application's Gemfile:

gem 'filmaffinity'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install filmaffinity

Documentation

FilmAffinity configuration

FilmAffinity offers some configuration options, which you can configure globally before your requests. You could include an imgur_id to upload the posters on Imgur and avoid forbidden hotlinking from filmaffinity. You can also change the language,which is english by default.

FilmAffinity.configure do |config|
  config.imgur_id = 'Your-imgur-client-id'
  config.language = 'ES'
end
FilmAffinity::Search

Returns an array of FilmAffinity::Movie, containing preload ID and title.

FilmAffinity::Movie

Includes some methods to retrieve the complete movie info.

FilmAffinity::Top options

The options hash accepts several parameters:

{
  :genre => 'AC',
  :country => 'DE',
  :from_year => 2014,
  :to_year => 2016,
  :no_doc => true,
  :no_tv => true
}
:genre
  • 'AC' Action
  • 'AV' Adventure
  • 'AN' Animation
  • 'CO' Comedy
  • 'DO' Documentary
  • 'DR' Drama
  • 'FAN' Fantasy
  • 'F-N' Film-Noir
  • 'TE' Horror
  • 'INF' Kids
  • 'MU' Musical
  • 'INT' Mystery
  • 'RO' Romance
  • 'C-F' Sci-Fi
  • 'TH' Thriller
  • 'TV_SE' TV Series
  • 'DESC' Unknown
  • 'BE' War
  • 'WE' Western
:country

2-letter code supplied by the ISO

:no_doc

true to avoid documentaries

:no_tv

true to avoid TV series

Examples

Top:

#Top FilmAffinity ever
top = FilmAffinity::Top.new

top.movies
#=> [<FilmAffinity::Movie>
     <FilmAffinity::Movie>
     <FilmAffinity::Movie>
     ...]

top.movies.first
#=> #<FilmAffinity::Movie>

#Top FilmAffinity with options and number of results
options = {
  :genre => 'AN',
  :no_tv => true
}
top = FilmAffinity::Top.new options, 20

top.movies
#=> [<FilmAffinity::Movie>
     <FilmAffinity::Movie>
     <FilmAffinity::Movie>
     ...]

top.movies.first
#=> #<FilmAffinity::Movie>

Search:

search = FilmAffinity::Search.new('Padrino')

search.movies
#=> [<FilmAffinity::Movie>
     <FilmAffinity::Movie>
     <FilmAffinity::Movie>
     ...]

search.movies.first
#=> #<FilmAffinity::Movie>

Movie:

movie = FilmAffinity::Movie.new(809297, 'El Padrino')

movie.director
#=> 'Francis Ford Coppola'

movie.year
#=> 1972

movie.rating
#=> 9.1

movie.cast
#=> ['Marlon Brando',
     'Al Pacino',
     'James Caan',
     'Robert Duvall',
     'Diane Keaton',
     ...]

Contributors

This gem is created and maintained by Oriol Bellido and David Santos