JMovies.IMDb
1.7.0
Install-Package JMovies.IMDb -Version 1.7.0
dotnet add package JMovies.IMDb --version 1.7.0
<PackageReference Include="JMovies.IMDb" Version="1.7.0" />
paket add JMovies.IMDb --version 1.7.0
#r "nuget: JMovies.IMDb, 1.7.0"
// Install JMovies.IMDb as a Cake Addin
#addin nuget:?package=JMovies.IMDb&version=1.7.0
// Install JMovies.IMDb as a Cake Tool
#tool nuget:?package=JMovies.IMDb&version=1.7.0
JMovies.IMDb
JMovies IMDb Data Provider Library
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.
Product | Versions |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows |
.NET Core | netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.0 netstandard2.1 |
.NET Framework | net461 net462 net463 net47 net471 net472 net48 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen40 tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.0
- Fizzler.Systems.HtmlAgilityPack (>= 1.2.1)
- HtmlAgilityPack (>= 1.11.36)
- JM.Framework (>= 1.0.5)
- JMovies.IMDb.Common (>= 1.7.0)
- JMovies.IMDb.Entities (>= 1.7.0)
- System.Net.Http (>= 4.3.4)
- System.Net.Requests (>= 4.3.0)
- System.Threading.Tasks.Parallel (>= 4.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.7.0 | 59 | 7/28/2022 |
1.6.5 | 56 | 7/20/2022 |
1.6.3 | 92 | 5/26/2022 |
1.6.2 | 183 | 1/11/2022 |
1.6.1 | 86 | 1/11/2022 |
1.6.0 | 131 | 12/15/2021 |
1.5.5 | 259 | 2/7/2021 |
1.5.4 | 665 | 2/14/2020 |
1.5.3 | 333 | 12/9/2019 |
1.5.2 | 290 | 12/8/2019 |
1.5.1 | 286 | 12/7/2019 |
1.5.0 | 293 | 12/7/2019 |
1.4.9 | 291 | 12/7/2019 |
1.4.8 | 322 | 11/5/2019 |
1.4.7 | 303 | 11/3/2019 |
1.4.6 | 328 | 9/15/2019 |
1.4.5 | 328 | 9/11/2019 |
1.4.4 | 343 | 9/9/2019 |
1.4.3 | 349 | 9/8/2019 |
1.4.2 | 333 | 9/6/2019 |
1.4.1 | 356 | 9/2/2019 |
1.4.0 | 327 | 9/1/2019 |
1.3.7 | 314 | 9/1/2019 |
1.3.6 | 338 | 9/1/2019 |
1.3.5 | 363 | 8/25/2019 |
1.3.4 | 330 | 8/25/2019 |
1.3.3 | 321 | 8/25/2019 |
1.3.2 | 337 | 8/25/2019 |
1.3.1 | 330 | 8/25/2019 |
1.3.0 | 314 | 8/25/2019 |
1.2.2 | 327 | 8/23/2019 |
1.2.1 | 336 | 8/12/2019 |
1.2.0 | 341 | 8/11/2019 |
1.1.0 | 357 | 8/10/2019 |
1.0.0 | 331 | 8/8/2019 |