Giter Site home page Giter Site logo

jmovies.imdb's Introduction

JMovies.IMDb

JMovies IMDb Data Provider Library

Build Status NuGet Downloads NuGet Version

A IMDb data provider library written for .NET Standart platform that uses screen scraping to gather the data from IMDb on demand.

How to Use?

  • Simple Usage: After initializing the provider, simply by passing the movie ID, its details can be fetched. This will use a the most basic scraping and will provide only the information available on the production/person page.
IIMDbDataProvider imdbDataProvider = new IMDbScraperDataProvider();
Movie movie = imdbDataProvider.GetMovie(232500);
  • Detailed Scraping: GetMovie (also similar methods for other purposes) method optionally accepts a "DataFetchSettings" object. The scraper comes with a number of preset settings, by using "FullProductionDataFetchSettings"; it can be configured to visit all the related pages of the product and get the details from there and include in the movie object.
IIMDbDataProvider imdbDataProvider = new IMDbScraperDataProvider();
Movie movie = imdbDataProvider.GetMovie(232500, new FullProductionDataFetchSettings());
  • Scraping in any other language: As mentioned above, scrapers behaviour can be changed by providing a settings object. Any preset can be changed and simply by setting "PreferredCulture" as the culture name of the language which should be used while scraping, the scraper can be configured to use that language to get the results. Note that movie names etc. would be coming in that language.
IIMDbDataProvider imdbDataProvider = new IMDbScraperDataProvider();
Entities.Movies.Movie movie = imdbDataProvider.GetMovie(232500, new BasicProductionDataFetchSettings
{
    PreferredCulture = "tr-TR"
}); // https://www.imdb.com/title/tt0232500/

Under the hood

JMovies.IMDb uses .NET standart Http Web Requests to fetch the IMDB pages and parse them using HtmlAgilityPack+Fizzler.

Maintenance

I will personaly maintain the project as much as i can but as it uses Screen Scraping it is possible that it will require some changes along the way, so every issue report and pull request is welcome!

Code Documentation

Documentation website can be found under JMovies.IMDb GitHub Pages.

Warning

Please know that this library is not intended for bulk data scraping from IMDb and it is restricted by them. Also note that this library is not affliated with IMDB and you need to use it at your own risk/responsibility.

jmovies.imdb's People

Contributors

jnrmnt avatar patricedargenton avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.