From fe5633668d4494f89a780e7eea9f036bac4aa8cd Mon Sep 17 00:00:00 2001 From: Ozan KANIK Date: Wed, 8 Mar 2023 22:17:19 +0100 Subject: [PATCH] fix for issue #13 and more fixes related to movie title and year --- .../Person/BasicPersonScrapingTests.cs | 2 +- .../Helpers/Movies/MoviePageDetailsHelper.cs | 26 +- .../Helpers/People/PersonPageHelper.cs | 15 +- JMovies.IMDb/JMovies.IMDb.csproj | 2 +- docs/man/man3/AutoGeneratedProgram.3 | 2 +- docs/man/man3/JMovies.3 | 2 +- docs/man/man3/JMovies_IMDb.3 | 2 +- docs/man/man3/JMovies_IMDb_Common.3 | 2 +- docs/man/man3/JMovies_IMDb_Common_Constants.3 | 2 +- ...b_Common_Constants_GeneralRegexConstants.3 | 2 +- ...vies_IMDb_Common_Constants_IMDbConstants.3 | 2 +- .../man/man3/JMovies_IMDb_Common_Extensions.3 | 2 +- docs/man/man3/JMovies_IMDb_Entities.3 | 2 +- docs/man/man3/JMovies_IMDb_Entities_Common.3 | 2 +- .../JMovies_IMDb_Entities_Common_Amount.3 | 2 +- .../man3/JMovies_IMDb_Entities_Common_Image.3 | 2 +- .../JMovies_IMDb_Entities_Common_Length.3 | 2 +- .../man3/JMovies_IMDb_Entities_Interfaces.3 | 2 +- ...Db_Entities_Interfaces_IIMDbDataProvider.3 | 2 +- docs/man/man3/JMovies_IMDb_Entities_Misc.3 | 2 +- .../JMovies_IMDb_Entities_Misc_DataSource.3 | 2 +- docs/man/man3/JMovies_IMDb_Entities_Movies.3 | 2 +- .../man3/JMovies_IMDb_Entities_Movies_AKA.3 | 2 +- ...Movies_IMDb_Entities_Movies_ActingCredit.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Budget.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Character.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Company.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Country.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Credit.3 | 2 +- .../man3/JMovies_IMDb_Entities_Movies_Genre.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Keyword.3 | 2 +- .../JMovies_IMDb_Entities_Movies_LDJson.3 | 2 +- ...JMovies_IMDb_Entities_Movies_LDJson_Info.3 | 2 +- ...ies_IMDb_Entities_Movies_LDJson_Metadata.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Language.3 | 2 +- .../man3/JMovies_IMDb_Entities_Movies_Movie.3 | 2 +- ...Movies_IMDb_Entities_Movies_OfficialSite.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Production.3 | 2 +- ...s_IMDb_Entities_Movies_ProductionCountry.3 | 2 +- ..._IMDb_Entities_Movies_ProductionLanguage.3 | 2 +- .../JMovies_IMDb_Entities_Movies_Rating.3 | 2 +- ...JMovies_IMDb_Entities_Movies_ReleaseDate.3 | 2 +- ...JMovies_IMDb_Entities_Movies_TVCharacter.3 | 2 +- .../JMovies_IMDb_Entities_Movies_TVSeries.3 | 2 +- .../JMovies_IMDb_Entities_Movies_TagLine.3 | 2 +- docs/man/man3/JMovies_IMDb_Entities_People.3 | 2 +- .../man3/JMovies_IMDb_Entities_People_Actor.3 | 2 +- .../JMovies_IMDb_Entities_People_Person.3 | 2 +- ...es_IMDb_Entities_People_ProductionCredit.3 | 2 +- .../man3/JMovies_IMDb_Entities_PrivateAPI.3 | 2 +- ...JMovies_IMDb_Entities_PrivateAPI_APIData.3 | 2 +- ...ies_IMDb_Entities_PrivateAPI_APIResponse.3 | 2 +- ..._Entities_PrivateAPI_DisplayableProperty.3 | 2 +- ...ties_PrivateAPI_DisplayablePropertyValue.3 | 2 +- ...vies_IMDb_Entities_PrivateAPI_Production.3 | 2 +- ..._IMDb_Entities_PrivateAPI_ProductionData.3 | 2 +- ...b_Entities_PrivateAPI_Production_AKAData.3 | 2 +- ...b_Entities_PrivateAPI_Production_AKANode.3 | 2 +- ..._Entities_PrivateAPI_Production_AKAsEdge.3 | 2 +- ...tities_PrivateAPI_Production_CountryInfo.3 | 2 +- .../man/man3/JMovies_IMDb_Entities_Settings.3 | 2 +- ..._Entities_Settings_BaseDataFetchSettings.3 | 2 +- ...ntities_Settings_PersonDataFetchSettings.3 | 2 +- ...ties_Settings_PersonFetchSettingsBuilder.3 | 2 +- .../JMovies_IMDb_Entities_Settings_Presets.3 | 2 +- ...ngs_Presets_BasicPersonDataFetchSettings.3 | 2 +- ...Presets_BasicProductionDataFetchSettings.3 | 2 +- ...ings_Presets_FullPersonDataFetchSettings.3 | 2 +- ..._Presets_FullProductionDataFetchSettings.3 | 2 +- ...ies_Settings_ProductionDataFetchSettings.3 | 2 +- ..._Settings_ProductionFetchSettingsBuilder.3 | 2 +- docs/man/man3/JMovies_IMDb_Factories.3 | 2 +- .../JMovies_IMDb_Factories_CreditFactory.3 | 2 +- ...JMovies_IMDb_Factories_ProductionFactory.3 | 2 +- docs/man/man3/JMovies_IMDb_Helpers.3 | 2 +- .../man3/JMovies_IMDb_Helpers_HtmlHelper.3 | 2 +- .../man3/JMovies_IMDb_Helpers_HttpHelper.3 | 2 +- .../man3/JMovies_IMDb_Helpers_IMDBIDHelper.3 | 2 +- .../JMovies_IMDb_Helpers_IMDBImageHelper.3 | 2 +- docs/man/man3/JMovies_IMDb_Helpers_Movies.3 | 2 +- docs/man/man3/JMovies_IMDb_Helpers_People.3 | 2 +- ...Db_Helpers_People_PhotoGalleryPageHelper.3 | 2 +- docs/man/man3/JMovies_IMDb_Providers.3 | 2 +- ...s_IMDb_Providers_IMDbScraperDataProvider.3 | 2 +- docs/man/man3/JMovies_IMDb_Tests.3 | 2 +- docs/man/man3/JMovies_IMDb_Tests_Person.3 | 2 +- ...Db_Tests_Person_BasicPersonScrapingTests.3 | 2 +- ...ovies_IMDb_Tests_Person_PersonAsyncTests.3 | 2 +- ...ies_IMDb_Tests_Person_PersonGalleryTests.3 | 2 +- docs/man/man3/JMovies_IMDb_Tests_Production.3 | 2 +- .../JMovies_IMDb_Tests_Production_AKATests.3 | 2 +- ..._Production_BasicProductionScrapingTests.3 | 2 +- ...JMovies_IMDb_Tests_Production_GenreTests.3 | 2 +- ...Db_Tests_Production_ProductionAsyncTests.3 | 2 +- ..._Tests_Production_ProductionGalleryTests.3 | 2 +- ...ovies_IMDb_Tests_Production_RuntimeTests.3 | 2 +- ...Db_Tests_Production_ScrapingCultureTests.3 | 2 +- ...MDb_Tests_Production_SpecificMoviesTests.3 | 2 +- ...Movies_IMDb_Tests_Production_TVShowTests.3 | 2 +- docs/man/man3/md__r_e_a_d_m_e.3 | 2 +- docs/rtf/refman.rtf | 4 +- ...pers_1_1_people_1_1_person_page_helper.xml | 6 +- ...1_movies_1_1_movie_page_details_helper.xml | 12 +- ...person_1_1_basic_person_scraping_tests.xml | 2 +- .../d8/d02/_movie_page_details_helper_8cs.xml | 864 +++++++++--------- docs/xml/d8/d1b/_person_page_helper_8cs.xml | 173 ++-- .../dc9/_basic_person_scraping_tests_8cs.xml | 2 +- ..._j_movies_8_i_m_db_8_assembly_info_8cs.xml | 6 +- 108 files changed, 666 insertions(+), 640 deletions(-) diff --git a/JMovies.IMDb.Tests/Person/BasicPersonScrapingTests.cs b/JMovies.IMDb.Tests/Person/BasicPersonScrapingTests.cs index b6e1e08..40526aa 100644 --- a/JMovies.IMDb.Tests/Person/BasicPersonScrapingTests.cs +++ b/JMovies.IMDb.Tests/Person/BasicPersonScrapingTests.cs @@ -15,7 +15,7 @@ public class BasicPersonScrapingTests /// /// Static list of IMDb IDs of some persons to be tested /// - private static readonly long[] personIDsToTest = new long[] { 18652, 3614913, 5253, 1297015, 3614913, 1877 }; + private static readonly long[] personIDsToTest = new long[] { 325717, 18652, 3614913, 5253, 1297015, 3614913, 1877 }; /// /// Method that tests scraping of person pages diff --git a/JMovies.IMDb/Helpers/Movies/MoviePageDetailsHelper.cs b/JMovies.IMDb/Helpers/Movies/MoviePageDetailsHelper.cs index 96938d6..59d87ae 100644 --- a/JMovies.IMDb/Helpers/Movies/MoviePageDetailsHelper.cs +++ b/JMovies.IMDb/Helpers/Movies/MoviePageDetailsHelper.cs @@ -47,18 +47,28 @@ public static bool Parse(IMDbScraperDataProvider providerInstance, ref Movie mov } //Parse Title - HtmlNode blockMetadataElement = documentNode.QuerySelector("[data-testid=hero-title-block__metadata]"); - if (blockMetadataElement != null) + HtmlNode blockTitleElement = documentNode.QuerySelector("[data-testid=hero-title-block__title]"); + HtmlNode simpleTitleElement = documentNode.QuerySelector("[data-testid=hero__pageTitle]"); + if (blockTitleElement != null || simpleTitleElement != null) { - HtmlNode titleWrapper = blockMetadataElement.ParentNode.ParentNode; + HtmlNode titleWrapper = null; + if (blockTitleElement != null) + { + titleWrapper = blockTitleElement.ParentNode.ParentNode; + } + else + { + titleWrapper = simpleTitleElement.ParentNode.ParentNode; + } + HtmlNode documentTitle = documentNode.QuerySelector("title"); + string documentTitleText = documentTitle.InnerText.Prepare(); movie.Title = titleWrapper.QuerySelector("h1").InnerText.Prepare(); - if (IMDbConstants.MovieYearRegex.IsMatch(movie.Title)) + if (IMDbConstants.MovieYearRegex.IsMatch(documentTitleText)) { - Match yearMatch = IMDbConstants.MovieYearRegex.Match(movie.Title); - movie.Year = yearMatch.Groups[2].Value.Trim().ToInteger(); - movie.Title = yearMatch.Groups[1].Value.Trim(); + Match yearMatch = IMDbConstants.MovieYearRegex.Match(documentTitleText); + movie.Year = yearMatch.Groups[1].Value.Trim().ToInteger(); } - HtmlNode originalTitleNode = titleWrapper.QuerySelector(".originalTitle"); + HtmlNode originalTitleNode = titleWrapper.QuerySelector("[data-testid=hero-title-block__original-title]"); if (originalTitleNode != null) { movie.OriginalTitle = originalTitleNode.InnerText.Prepare(); diff --git a/JMovies.IMDb/Helpers/People/PersonPageHelper.cs b/JMovies.IMDb/Helpers/People/PersonPageHelper.cs index e105c7a..e778ed6 100644 --- a/JMovies.IMDb/Helpers/People/PersonPageHelper.cs +++ b/JMovies.IMDb/Helpers/People/PersonPageHelper.cs @@ -103,14 +103,17 @@ public static void Parse(Person person, HtmlNode documentNode, PersonDataFetchSe int titleYear = default(int); int? titleEndYear = null; - string titleYearString = titleYearElement.InnerText; - Match titleYearMatch = IMDbConstants.CreditYearRegex.Match(titleYearString); - if (titleYearMatch.Success) + if (titleYearElement != null) { - titleYear = titleYearMatch.Groups[1].Value.ToInteger(); - if (titleYearMatch.Groups.Count >= 4 && titleYearMatch.Groups[3].Success) + string titleYearString = titleYearElement.InnerText; + Match titleYearMatch = IMDbConstants.CreditYearRegex.Match(titleYearString); + if (titleYearMatch.Success) { - titleEndYear = titleYearMatch.Groups[3].Value.ToInteger(); + titleYear = titleYearMatch.Groups[1].Value.ToInteger(); + if (titleYearMatch.Groups.Count >= 4 && titleYearMatch.Groups[3].Success) + { + titleEndYear = titleYearMatch.Groups[3].Value.ToInteger(); + } } } diff --git a/JMovies.IMDb/JMovies.IMDb.csproj b/JMovies.IMDb/JMovies.IMDb.csproj index 0972228..b78b0a8 100644 --- a/JMovies.IMDb/JMovies.IMDb.csproj +++ b/JMovies.IMDb/JMovies.IMDb.csproj @@ -8,7 +8,7 @@ JnRMnT MIT JMovies IMDb Data Provider Library - Currently supports on-demand screen scraping from IMDb to receive movie and person details. - 1.8.3 + 1.8.4 scraper,movies,movie,imdb,actor,scraping,screenscrapping,api,imdb-scraper git https://github.com/JnRMnT/JMovies.IMDb diff --git a/docs/man/man3/AutoGeneratedProgram.3 b/docs/man/man3/AutoGeneratedProgram.3 index dfbf668..d92125d 100644 --- a/docs/man/man3/AutoGeneratedProgram.3 +++ b/docs/man/man3/AutoGeneratedProgram.3 @@ -1,4 +1,4 @@ -.TH "AutoGeneratedProgram" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "AutoGeneratedProgram" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies.3 b/docs/man/man3/JMovies.3 index 62d87da..ab9bbb6 100644 --- a/docs/man/man3/JMovies.3 +++ b/docs/man/man3/JMovies.3 @@ -1,4 +1,4 @@ -.TH "JMovies" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb.3 b/docs/man/man3/JMovies_IMDb.3 index 5851c0f..5fe1064 100644 --- a/docs/man/man3/JMovies_IMDb.3 +++ b/docs/man/man3/JMovies_IMDb.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Common.3 b/docs/man/man3/JMovies_IMDb_Common.3 index 2e9da42..0fb5376 100644 --- a/docs/man/man3/JMovies_IMDb_Common.3 +++ b/docs/man/man3/JMovies_IMDb_Common.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Common" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Common" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Common_Constants.3 b/docs/man/man3/JMovies_IMDb_Common_Constants.3 index 2470c73..749edf0 100644 --- a/docs/man/man3/JMovies_IMDb_Common_Constants.3 +++ b/docs/man/man3/JMovies_IMDb_Common_Constants.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Common.Constants" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Common.Constants" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Common_Constants_GeneralRegexConstants.3 b/docs/man/man3/JMovies_IMDb_Common_Constants_GeneralRegexConstants.3 index 8ea2dcc..d1745da 100644 --- a/docs/man/man3/JMovies_IMDb_Common_Constants_GeneralRegexConstants.3 +++ b/docs/man/man3/JMovies_IMDb_Common_Constants_GeneralRegexConstants.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Common.Constants.GeneralRegexConstants" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Common.Constants.GeneralRegexConstants" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Common_Constants_IMDbConstants.3 b/docs/man/man3/JMovies_IMDb_Common_Constants_IMDbConstants.3 index 8ae6842..40c3977 100644 --- a/docs/man/man3/JMovies_IMDb_Common_Constants_IMDbConstants.3 +++ b/docs/man/man3/JMovies_IMDb_Common_Constants_IMDbConstants.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Common.Constants.IMDbConstants" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Common.Constants.IMDbConstants" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Common_Extensions.3 b/docs/man/man3/JMovies_IMDb_Common_Extensions.3 index 04cf89c..5d1300c 100644 --- a/docs/man/man3/JMovies_IMDb_Common_Extensions.3 +++ b/docs/man/man3/JMovies_IMDb_Common_Extensions.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Common.Extensions" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Common.Extensions" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities.3 b/docs/man/man3/JMovies_IMDb_Entities.3 index 8a81ba2..5036624 100644 --- a/docs/man/man3/JMovies_IMDb_Entities.3 +++ b/docs/man/man3/JMovies_IMDb_Entities.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Common.3 b/docs/man/man3/JMovies_IMDb_Entities_Common.3 index 2ea8a25..b1dac01 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Common.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Common.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Common" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Common" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Common_Amount.3 b/docs/man/man3/JMovies_IMDb_Entities_Common_Amount.3 index eeb040f..0bf91b2 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Common_Amount.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Common_Amount.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Common.Amount" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Common.Amount" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Common_Image.3 b/docs/man/man3/JMovies_IMDb_Entities_Common_Image.3 index 0e26ea3..01b866f 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Common_Image.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Common_Image.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Common.Image" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Common.Image" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Common_Length.3 b/docs/man/man3/JMovies_IMDb_Entities_Common_Length.3 index 16f34a0..f8094a8 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Common_Length.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Common_Length.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Common.Length" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Common.Length" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Interfaces.3 b/docs/man/man3/JMovies_IMDb_Entities_Interfaces.3 index 1919a96..396cf5f 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Interfaces.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Interfaces.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Interfaces" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Interfaces" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Interfaces_IIMDbDataProvider.3 b/docs/man/man3/JMovies_IMDb_Entities_Interfaces_IIMDbDataProvider.3 index 754711a..bb17034 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Interfaces_IIMDbDataProvider.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Interfaces_IIMDbDataProvider.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Interfaces.IIMDbDataProvider" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Interfaces.IIMDbDataProvider" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Misc.3 b/docs/man/man3/JMovies_IMDb_Entities_Misc.3 index 5b82631..ff17863 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Misc.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Misc.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Misc" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Misc" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Misc_DataSource.3 b/docs/man/man3/JMovies_IMDb_Entities_Misc_DataSource.3 index b8cf958..a0c3715 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Misc_DataSource.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Misc_DataSource.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Misc.DataSource" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Misc.DataSource" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies.3 index 64c2902..567fe08 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_AKA.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_AKA.3 index 36e0e62..a04cb0c 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_AKA.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_AKA.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.AKA" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.AKA" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_ActingCredit.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_ActingCredit.3 index fbf1149..04f5fdc 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_ActingCredit.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_ActingCredit.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.ActingCredit" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.ActingCredit" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Budget.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Budget.3 index a5682a0..a7643ab 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Budget.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Budget.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Budget" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Budget" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Character.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Character.3 index d364db5..5747820 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Character.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Character.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Character" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Character" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Company.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Company.3 index 5027575..2234a0a 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Company.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Company.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Company" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Company" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Country.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Country.3 index 73f86b4..ab543c7 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Country.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Country.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Country" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Country" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Credit.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Credit.3 index a6efcae..28d87a8 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Credit.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Credit.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Credit" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Credit" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Genre.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Genre.3 index 2cbf56e..dea1c0a 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Genre.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Genre.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Genre" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Genre" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Keyword.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Keyword.3 index 6cd67ed..0d35796 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Keyword.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Keyword.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Keyword" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Keyword" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson.3 index beb0f25..793e319 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.LDJson" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.LDJson" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Info.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Info.3 index 9abdd6d..2855d5a 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Info.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Info.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.LDJson.Info" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.LDJson.Info" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Metadata.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Metadata.3 index 002fa75..dbf14e4 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Metadata.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_LDJson_Metadata.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.LDJson.Metadata" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.LDJson.Metadata" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Language.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Language.3 index d94c05b..5ba12d4 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Language.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Language.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Language" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Language" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Movie.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Movie.3 index 92083f1..3f91d9b 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Movie.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Movie.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Movie" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Movie" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_OfficialSite.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_OfficialSite.3 index 6a23f34..264f835 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_OfficialSite.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_OfficialSite.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.OfficialSite" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.OfficialSite" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Production.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Production.3 index 996b7d8..edad04e 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Production.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Production.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Production" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Production" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionCountry.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionCountry.3 index c948fab..e9388b3 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionCountry.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionCountry.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.ProductionCountry" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.ProductionCountry" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionLanguage.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionLanguage.3 index 6e133b6..fdc13cc 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionLanguage.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_ProductionLanguage.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.ProductionLanguage" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.ProductionLanguage" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_Rating.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_Rating.3 index a9fc7d5..fb60785 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_Rating.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_Rating.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.Rating" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.Rating" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_ReleaseDate.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_ReleaseDate.3 index 9a3ac78..6c0d846 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_ReleaseDate.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_ReleaseDate.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.ReleaseDate" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.ReleaseDate" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_TVCharacter.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_TVCharacter.3 index 1dacfa3..613d023 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_TVCharacter.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_TVCharacter.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.TVCharacter" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.TVCharacter" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_TVSeries.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_TVSeries.3 index 77e50cd..13af121 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_TVSeries.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_TVSeries.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.TVSeries" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.TVSeries" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Movies_TagLine.3 b/docs/man/man3/JMovies_IMDb_Entities_Movies_TagLine.3 index 5431a47..79ccae0 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Movies_TagLine.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Movies_TagLine.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Movies.TagLine" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Movies.TagLine" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_People.3 b/docs/man/man3/JMovies_IMDb_Entities_People.3 index f0fb815..3d7b9f7 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_People.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_People.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.People" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.People" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_People_Actor.3 b/docs/man/man3/JMovies_IMDb_Entities_People_Actor.3 index 0dab323..5d9caca 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_People_Actor.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_People_Actor.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.People.Actor" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.People.Actor" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_People_Person.3 b/docs/man/man3/JMovies_IMDb_Entities_People_Person.3 index 046bb1a..67428bc 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_People_Person.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_People_Person.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.People.Person" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.People.Person" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_People_ProductionCredit.3 b/docs/man/man3/JMovies_IMDb_Entities_People_ProductionCredit.3 index 6dd1446..9d4d2b9 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_People_ProductionCredit.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_People_ProductionCredit.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.People.ProductionCredit" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.People.ProductionCredit" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI.3 index 0f18d4c..cc77f8b 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIData.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIData.3 index d24c1d2..bd47d94 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIData.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIData.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.APIData" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.APIData" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIResponse.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIResponse.3 index 30ceada..31fe1c9 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIResponse.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_APIResponse.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.APIResponse" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.APIResponse" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayableProperty.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayableProperty.3 index 42aa736..2c5ec33 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayableProperty.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayableProperty.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.DisplayableProperty" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.DisplayableProperty" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayablePropertyValue.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayablePropertyValue.3 index 3b4f081..d30a939 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayablePropertyValue.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_DisplayablePropertyValue.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.DisplayablePropertyValue" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.DisplayablePropertyValue" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production.3 index fab1c2a..27f4b1c 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.Production" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.Production" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_ProductionData.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_ProductionData.3 index b0a6c97..6227bce 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_ProductionData.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_ProductionData.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.ProductionData" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.ProductionData" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAData.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAData.3 index d565efe..8b597bc 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAData.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAData.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKAData" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKAData" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKANode.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKANode.3 index e58cbe7..248cfbd 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKANode.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKANode.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKANode" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKANode" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAsEdge.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAsEdge.3 index bdfaaa3..bbb3386 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAsEdge.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_AKAsEdge.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKAsEdge" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.Production.AKAsEdge" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_CountryInfo.3 b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_CountryInfo.3 index da6e09a..5b985ea 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_CountryInfo.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_PrivateAPI_Production_CountryInfo.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.PrivateAPI.Production.CountryInfo" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.PrivateAPI.Production.CountryInfo" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings.3 index 9fde0d7..99bcf53 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_BaseDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_BaseDataFetchSettings.3 index 7d26092..8de6969 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_BaseDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_BaseDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.BaseDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.BaseDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonDataFetchSettings.3 index ec5ac26..f3f6383 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.PersonDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.PersonDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonFetchSettingsBuilder.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonFetchSettingsBuilder.3 index 95584e6..a2703d9 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonFetchSettingsBuilder.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_PersonFetchSettingsBuilder.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.PersonFetchSettingsBuilder" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.PersonFetchSettingsBuilder" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets.3 index 08f85b1..8c9f134 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.Presets" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.Presets" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicPersonDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicPersonDataFetchSettings.3 index 13a0f86..2a43d55 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicPersonDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicPersonDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.Presets.BasicPersonDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.Presets.BasicPersonDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicProductionDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicProductionDataFetchSettings.3 index 62110d0..70dae86 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicProductionDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_BasicProductionDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.Presets.BasicProductionDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.Presets.BasicProductionDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullPersonDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullPersonDataFetchSettings.3 index 0180e8b..6fcd880 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullPersonDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullPersonDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.Presets.FullPersonDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.Presets.FullPersonDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullProductionDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullProductionDataFetchSettings.3 index 22bdab8..acb5430 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullProductionDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_Presets_FullProductionDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.Presets.FullProductionDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.Presets.FullProductionDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionDataFetchSettings.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionDataFetchSettings.3 index e682e08..62a32a3 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionDataFetchSettings.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionDataFetchSettings.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.ProductionDataFetchSettings" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.ProductionDataFetchSettings" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionFetchSettingsBuilder.3 b/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionFetchSettingsBuilder.3 index 7b67e04..5cfb553 100644 --- a/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionFetchSettingsBuilder.3 +++ b/docs/man/man3/JMovies_IMDb_Entities_Settings_ProductionFetchSettingsBuilder.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Entities.Settings.ProductionFetchSettingsBuilder" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Entities.Settings.ProductionFetchSettingsBuilder" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Factories.3 b/docs/man/man3/JMovies_IMDb_Factories.3 index 90ee6b1..cfd6e38 100644 --- a/docs/man/man3/JMovies_IMDb_Factories.3 +++ b/docs/man/man3/JMovies_IMDb_Factories.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Factories" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Factories" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Factories_CreditFactory.3 b/docs/man/man3/JMovies_IMDb_Factories_CreditFactory.3 index fccd0ad..281b449 100644 --- a/docs/man/man3/JMovies_IMDb_Factories_CreditFactory.3 +++ b/docs/man/man3/JMovies_IMDb_Factories_CreditFactory.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Factories.CreditFactory" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Factories.CreditFactory" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Factories_ProductionFactory.3 b/docs/man/man3/JMovies_IMDb_Factories_ProductionFactory.3 index 9b5d888..df1eb8e 100644 --- a/docs/man/man3/JMovies_IMDb_Factories_ProductionFactory.3 +++ b/docs/man/man3/JMovies_IMDb_Factories_ProductionFactory.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Factories.ProductionFactory" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Factories.ProductionFactory" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers.3 b/docs/man/man3/JMovies_IMDb_Helpers.3 index 61de0d2..0023edb 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_HtmlHelper.3 b/docs/man/man3/JMovies_IMDb_Helpers_HtmlHelper.3 index 4369cd9..7bee82a 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_HtmlHelper.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_HtmlHelper.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.HtmlHelper" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.HtmlHelper" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_HttpHelper.3 b/docs/man/man3/JMovies_IMDb_Helpers_HttpHelper.3 index a77eb62..bc5c85a 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_HttpHelper.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_HttpHelper.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.HttpHelper" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.HttpHelper" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_IMDBIDHelper.3 b/docs/man/man3/JMovies_IMDb_Helpers_IMDBIDHelper.3 index ca841fb..b95176d 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_IMDBIDHelper.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_IMDBIDHelper.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.IMDBIDHelper" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.IMDBIDHelper" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_IMDBImageHelper.3 b/docs/man/man3/JMovies_IMDb_Helpers_IMDBImageHelper.3 index 54677f2..379bf40 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_IMDBImageHelper.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_IMDBImageHelper.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.IMDBImageHelper" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.IMDBImageHelper" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_Movies.3 b/docs/man/man3/JMovies_IMDb_Helpers_Movies.3 index 6f48fc9..279b96e 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_Movies.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_Movies.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.Movies" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.Movies" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_People.3 b/docs/man/man3/JMovies_IMDb_Helpers_People.3 index 55d633e..e573b0d 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_People.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_People.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.People" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.People" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Helpers_People_PhotoGalleryPageHelper.3 b/docs/man/man3/JMovies_IMDb_Helpers_People_PhotoGalleryPageHelper.3 index 936794c..8972229 100644 --- a/docs/man/man3/JMovies_IMDb_Helpers_People_PhotoGalleryPageHelper.3 +++ b/docs/man/man3/JMovies_IMDb_Helpers_People_PhotoGalleryPageHelper.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Helpers.People.PhotoGalleryPageHelper" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Helpers.People.PhotoGalleryPageHelper" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Providers.3 b/docs/man/man3/JMovies_IMDb_Providers.3 index 46990ff..11555b9 100644 --- a/docs/man/man3/JMovies_IMDb_Providers.3 +++ b/docs/man/man3/JMovies_IMDb_Providers.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Providers" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Providers" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Providers_IMDbScraperDataProvider.3 b/docs/man/man3/JMovies_IMDb_Providers_IMDbScraperDataProvider.3 index eeb2219..6e6fc98 100644 --- a/docs/man/man3/JMovies_IMDb_Providers_IMDbScraperDataProvider.3 +++ b/docs/man/man3/JMovies_IMDb_Providers_IMDbScraperDataProvider.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Providers.IMDbScraperDataProvider" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Providers.IMDbScraperDataProvider" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests.3 b/docs/man/man3/JMovies_IMDb_Tests.3 index 6e8eee3..c292dcd 100644 --- a/docs/man/man3/JMovies_IMDb_Tests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Person.3 b/docs/man/man3/JMovies_IMDb_Tests_Person.3 index c176de4..f238ef5 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Person.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Person.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Person" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Person" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Person_BasicPersonScrapingTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Person_BasicPersonScrapingTests.3 index 0c522de..ed8f48b 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Person_BasicPersonScrapingTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Person_BasicPersonScrapingTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Person.BasicPersonScrapingTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Person.BasicPersonScrapingTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Person_PersonAsyncTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Person_PersonAsyncTests.3 index b5cb051..1555f81 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Person_PersonAsyncTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Person_PersonAsyncTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Person.PersonAsyncTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Person.PersonAsyncTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Person_PersonGalleryTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Person_PersonGalleryTests.3 index 020d3b5..7c080b0 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Person_PersonGalleryTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Person_PersonGalleryTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Person.PersonGalleryTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Person.PersonGalleryTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production.3 b/docs/man/man3/JMovies_IMDb_Tests_Production.3 index c70637b..a9de7a2 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_AKATests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_AKATests.3 index e2df28c..ec43220 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_AKATests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_AKATests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.AKATests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.AKATests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_BasicProductionScrapingTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_BasicProductionScrapingTests.3 index 4e54acd..6e4d2fc 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_BasicProductionScrapingTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_BasicProductionScrapingTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.BasicProductionScrapingTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.BasicProductionScrapingTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_GenreTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_GenreTests.3 index c81eb13..18e9163 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_GenreTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_GenreTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.GenreTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.GenreTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionAsyncTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionAsyncTests.3 index 108ed27..9ada628 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionAsyncTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionAsyncTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.ProductionAsyncTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.ProductionAsyncTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionGalleryTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionGalleryTests.3 index 427c51c..cd3bee1 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionGalleryTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_ProductionGalleryTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.ProductionGalleryTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.ProductionGalleryTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_RuntimeTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_RuntimeTests.3 index 4018e96..ccdeab3 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_RuntimeTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_RuntimeTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.RuntimeTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.RuntimeTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_ScrapingCultureTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_ScrapingCultureTests.3 index b3ca79d..2059ca7 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_ScrapingCultureTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_ScrapingCultureTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.ScrapingCultureTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.ScrapingCultureTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_SpecificMoviesTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_SpecificMoviesTests.3 index f2c85fc..0bee1c1 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_SpecificMoviesTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_SpecificMoviesTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.SpecificMoviesTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.SpecificMoviesTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/JMovies_IMDb_Tests_Production_TVShowTests.3 b/docs/man/man3/JMovies_IMDb_Tests_Production_TVShowTests.3 index df5410a..6c15d55 100644 --- a/docs/man/man3/JMovies_IMDb_Tests_Production_TVShowTests.3 +++ b/docs/man/man3/JMovies_IMDb_Tests_Production_TVShowTests.3 @@ -1,4 +1,4 @@ -.TH "JMovies.IMDb.Tests.Production.TVShowTests" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "JMovies.IMDb.Tests.Production.TVShowTests" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/man/man3/md__r_e_a_d_m_e.3 b/docs/man/man3/md__r_e_a_d_m_e.3 index 1a07700..864a30c 100644 --- a/docs/man/man3/md__r_e_a_d_m_e.3 +++ b/docs/man/man3/md__r_e_a_d_m_e.3 @@ -1,4 +1,4 @@ -.TH "md__r_e_a_d_m_e" 3 "Sun Feb 26 2023" "JMovies.IMDb" \" -*- nroff -*- +.TH "md__r_e_a_d_m_e" 3 "Wed Mar 8 2023" "JMovies.IMDb" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/docs/rtf/refman.rtf b/docs/rtf/refman.rtf index 37aa512..c25c85e 100644 --- a/docs/rtf/refman.rtf +++ b/docs/rtf/refman.rtf @@ -108,7 +108,7 @@ {\info {\title {\comment JMovies.IMDb }JMovies.IMDb} {\comment Generated by doxygen 1.9.6.} -{\creatim \yr2023\mo2\dy26\hr22\min4\sec42} +{\creatim \yr2023\mo3\dy8\hr22\min10\sec35} }\pard\plain \sectd\pgnlcrm {\footer \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid {\chpgn}} @@ -121,7 +121,7 @@ \par\par\par\par\par\par\par\par\par\par\par\par \pard\plain \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid {\field\fldedit {\*\fldinst AUTHOR \\*MERGEFORMAT}{\fldrslt AUTHOR}}\par -Version \par{\field\fldedit {\*\fldinst CREATEDATE \\*MERGEFORMAT}{\fldrslt Sun Feb 26 2023 }}\par +Version \par{\field\fldedit {\*\fldinst CREATEDATE \\*MERGEFORMAT}{\fldrslt Wed Mar 8 2023 }}\par \page\page\vertalt \pard\plain \s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid Table of Contents\par diff --git a/docs/xml/d1/dea/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_people_1_1_person_page_helper.xml b/docs/xml/d1/dea/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_people_1_1_person_page_helper.xml index 436eb12..c147477 100644 --- a/docs/xml/d1/dea/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_people_1_1_person_page_helper.xml +++ b/docs/xml/d1/dea/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_people_1_1_person_page_helper.xml @@ -54,7 +54,7 @@ - + @@ -97,7 +97,7 @@ - + @@ -105,7 +105,7 @@ - + JMovies::IMDb::Helpers::People::PersonPageHelperDetectGender JMovies::IMDb::Helpers::People::PersonPageHelperParse diff --git a/docs/xml/d2/daf/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_movies_1_1_movie_page_details_helper.xml b/docs/xml/d2/daf/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_movies_1_1_movie_page_details_helper.xml index 6d1c25b..dfb37e0 100644 --- a/docs/xml/d2/daf/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_movies_1_1_movie_page_details_helper.xml +++ b/docs/xml/d2/daf/class_j_movies_1_1_i_m_db_1_1_helpers_1_1_movies_1_1_movie_page_details_helper.xml @@ -80,7 +80,7 @@ - + void @@ -121,7 +121,7 @@ - + @@ -152,7 +152,7 @@ - + void @@ -205,7 +205,7 @@ - + Character @@ -248,7 +248,7 @@ - + @@ -256,7 +256,7 @@ - + JMovies::IMDb::Helpers::Movies::MoviePageDetailsHelperGetCharacter JMovies::IMDb::Helpers::Movies::MoviePageDetailsHelperParse diff --git a/docs/xml/d2/dd7/class_j_movies_1_1_i_m_db_1_1_tests_1_1_person_1_1_basic_person_scraping_tests.xml b/docs/xml/d2/dd7/class_j_movies_1_1_i_m_db_1_1_tests_1_1_person_1_1_basic_person_scraping_tests.xml index 1dcccb4..868be13 100644 --- a/docs/xml/d2/dd7/class_j_movies_1_1_i_m_db_1_1_tests_1_1_person_1_1_basic_person_scraping_tests.xml +++ b/docs/xml/d2/dd7/class_j_movies_1_1_i_m_db_1_1_tests_1_1_person_1_1_basic_person_scraping_tests.xml @@ -9,7 +9,7 @@ personIDsToTest JMovies.IMDb.Tests.Person.BasicPersonScrapingTests.personIDsToTest - = new long[] { 18652, 3614913, 5253, 1297015, 3614913, 1877 } + = new long[] { 325717, 18652, 3614913, 5253, 1297015, 3614913, 1877 } Static list of IMDb IDs of some persons to be tested. diff --git a/docs/xml/d8/d02/_movie_page_details_helper_8cs.xml b/docs/xml/d8/d02/_movie_page_details_helper_8cs.xml index a75df46..600a628 100644 --- a/docs/xml/d8/d02/_movie_page_details_helper_8cs.xml +++ b/docs/xml/d8/d02/_movie_page_details_helper_8cs.xml @@ -51,440 +51,450 @@ } //ParseTitle -HtmlNodeblockMetadataElement=documentNode.QuerySelector("[data-testid=hero-title-block__metadata]"); -if(blockMetadataElement!=null) -{ -HtmlNodetitleWrapper=blockMetadataElement.ParentNode.ParentNode; -movie.Title=titleWrapper.QuerySelector("h1").InnerText.Prepare(); -if(IMDbConstants.MovieYearRegex.IsMatch(movie.Title)) +HtmlNodeblockTitleElement=documentNode.QuerySelector("[data-testid=hero-title-block__title]"); +HtmlNodesimpleTitleElement=documentNode.QuerySelector("[data-testid=hero__pageTitle]"); +if(blockTitleElement!=null||simpleTitleElement!=null) +{ +HtmlNodetitleWrapper=null; +if(blockTitleElement!=null) { -MatchyearMatch=IMDbConstants.MovieYearRegex.Match(movie.Title); -movie.Year=yearMatch.Groups[2].Value.Trim().ToInteger(); -movie.Title=yearMatch.Groups[1].Value.Trim(); -} -HtmlNodeoriginalTitleNode=titleWrapper.QuerySelector(".originalTitle"); -if(originalTitleNode!=null) -{ -movie.OriginalTitle=originalTitleNode.InnerText.Prepare(); -} - -foreach(HtmlNodetitleLinkintitleWrapper.QuerySelectorAll("a")) -{ -if(titleLink.OuterHtml.Contains("/releaseinfo")) -{ -MatchyearMatch=IMDbConstants.MovieYearRegex.Match(titleLink.InnerText.Prepare()); -if(yearMatch.Success) -{ -movie.Year=yearMatch.Groups[1].Value.Trim().ToInteger(); -if(yearMatch.Groups.Count>2) -{ -stringendYearString=yearMatch.Groups[2].Value.Trim(); -if(!string.IsNullOrEmpty(endYearString)) -{ -(movieasTVSeries).EndYear=yearMatch.Groups[2].Value.Trim().ToInteger(); -} -} -} -} -} -} -else -{ -returnfalse; -} - -stringalternativePosterURL=null; -//parsemetadata -HtmlNodeldJsonMetadataNode=documentNode.QuerySelector("script[type='application/ld+json']"); -if(ldJsonMetadataNode!=null) -{ -Metadatametadata=JsonSerializer.Deserialize<Metadata>(ldJsonMetadataNode.InnerText); -movie.StoryLine=metadata.Description; -movie.Genres=metadata.Genres?.Select(e=>newGenre{Identifier=e,Value=e}).ToArray(); -movie.Keywords=metadata.Keywords?.Split(',').Select(e=>newKeyword{Identifier=e,Value=e}).ToArray(); -if(!string.IsNullOrEmpty(metadata.Image)) -{ -alternativePosterURL=metadata.Image; -} -} - -HtmlNodeposterWrapperNode=documentNode.QuerySelector("[data-testid=hero-media__poster]"); -if(posterWrapperNode!=null) -{ -HtmlNodeposterNode=posterWrapperNode.QuerySelector("img"); -if(posterNode!=null) +titleWrapper=blockTitleElement.ParentNode.ParentNode; +} +else +{ +titleWrapper=simpleTitleElement.ParentNode.ParentNode; +} +HtmlNodedocumentTitle=documentNode.QuerySelector("title"); +stringdocumentTitleText=documentTitle.InnerText.Prepare(); +movie.Title=titleWrapper.QuerySelector("h1").InnerText.Prepare(); +if(IMDbConstants.MovieYearRegex.IsMatch(documentTitleText)) +{ +MatchyearMatch=IMDbConstants.MovieYearRegex.Match(documentTitleText); +movie.Year=yearMatch.Groups[1].Value.Trim().ToInteger(); +} +HtmlNodeoriginalTitleNode=titleWrapper.QuerySelector("[data-testid=hero-title-block__original-title]"); +if(originalTitleNode!=null) +{ +movie.OriginalTitle=originalTitleNode.InnerText.Prepare(); +} + +foreach(HtmlNodetitleLinkintitleWrapper.QuerySelectorAll("a")) +{ +if(titleLink.OuterHtml.Contains("/releaseinfo")) +{ +MatchyearMatch=IMDbConstants.MovieYearRegex.Match(titleLink.InnerText.Prepare()); +if(yearMatch.Success) +{ +movie.Year=yearMatch.Groups[1].Value.Trim().ToInteger(); +if(yearMatch.Groups.Count>2) +{ +stringendYearString=yearMatch.Groups[2].Value.Trim(); +if(!string.IsNullOrEmpty(endYearString)) +{ +(movieasTVSeries).EndYear=yearMatch.Groups[2].Value.Trim().ToInteger(); +} +} +} +} +} +} +else +{ +returnfalse; +} + +stringalternativePosterURL=null; +//parsemetadata +HtmlNodeldJsonMetadataNode=documentNode.QuerySelector("script[type='application/ld+json']"); +if(ldJsonMetadataNode!=null) +{ +Metadatametadata=JsonSerializer.Deserialize<Metadata>(ldJsonMetadataNode.InnerText); +movie.StoryLine=metadata.Description; +movie.Genres=metadata.Genres?.Select(e=>newGenre{Identifier=e,Value=e}).ToArray(); +movie.Keywords=metadata.Keywords?.Split(',').Select(e=>newKeyword{Identifier=e,Value=e}).ToArray(); +if(!string.IsNullOrEmpty(metadata.Image)) { -movie.Poster=newImage -{ -Title=posterNode.GetAttributeValue("alt",string.Empty).Prepare(), -URL=IMDBImageHelper.NormalizeImageUrl(posterNode.GetAttributeValue("src",string.Empty)) -}; -if(settings.FetchImageContents) -{ -movie.Poster.Content=IMDBImageHelper.GetImageContent(movie.Poster.URL); -} -} -} -elseif(!string.IsNullOrEmpty(alternativePosterURL)) -{ -//Useposterfrommetadata -movie.Poster=newImage{URL=alternativePosterURL}; -if(settings.FetchImageContents) -{ -movie.Poster.Content=IMDBImageHelper.GetImageContent(movie.Poster.URL); -} -} - -//ParseSummary -HtmlNodesummaryWrapper=documentNode.QuerySelector("[data-testid=plot]"); -if(summaryWrapper!=null) -{ -HtmlNodesummaryText=summaryWrapper.Children().LastOrDefault(e=>!string.IsNullOrEmpty(e.InnerText)); -if(summaryText!=null) -{ -movie.PlotSummary=summaryText.InnerText.Prepare(); -if(movie.PlotSummary.StartsWith(IMDbConstants.EmptyPlotText)) -{ -movie.PlotSummary=string.Empty; -} -} -} -else -{ -returnfalse; -} -HtmlNodesummaryCreditsWrapper=documentNode.QuerySelector("[data-testid=title-pc-wide-screen]"); -List<Credit>credits=newList<Credit>(); -if(summaryCreditsWrapper!=null) -{ -foreach(HtmlNodecreditSummaryNodeinsummaryCreditsWrapper.QuerySelectorAll("[data-testid=title-pc-principal-credit]")) -{ -List<Credit>summaryCredits=SummaryCastHelper.GetCreditInfo(creditSummaryNode); -if(summaryCredits!=null&&summaryCredits.Count>0) -{ -credits.AddRange(summaryCredits); -} -} -} - -//ParseStoryLine -HtmlNodestoryLineSection=documentNode.QuerySelector("[data-testid=Storyline]"); -if(storyLineSection!=null) -{ -SummaryStorylineHelper.Parse(movie,storyLineSection); -} - -//ParseDetailsSection -HtmlNodedetailsSection=documentNode.QuerySelector("[data-testid=title-details-section]>ul"); -if(detailsSection!=null) -{ -ParseDetailsSection(movie,detailsSection); -} - -//ParseTechnicalSpecsSection -HtmlNodetechnicalSpecsSection=documentNode.QuerySelector("[data-testid=title-techspecs-section]>ul"); -if(technicalSpecsSection!=null) -{ -ParseDetailsSection(movie,technicalSpecsSection); -} - -if(!settings.FetchDetailedCast) -{ -//ParseCastTable -HtmlNodecastListNode=documentNode.QuerySelector("[data-testid=title-cast]"); -SummaryCreditsHelper.ParseCastList(movie,credits,castListNode); -} -else -{ -//Fetchcreditsthroughfullcreditspage -stringfullCreditsUrl=moviePageUrl+"/"+IMDbConstants.FullCreditsPath; -WebRequestfullCreditsPageRequest=HttpHelper.InitializeWebRequest(fullCreditsUrl,settings); -HtmlDocumentcreditsPageDocument=HtmlHelper.GetNewHtmlDocument(); -using(Streamstream=HttpHelper.GetResponseStream(fullCreditsPageRequest,settings)) -{ -creditsPageDocument.Load(stream,Encoding.UTF8); -} -HtmlNodefullCreditsPageDocumentNode=creditsPageDocument.DocumentNode; -HtmlNodefullCreditsPageCastListNode=fullCreditsPageDocumentNode.QuerySelector(".cast_list"); -ParseCastListAsLegacyTable(movie,credits,fullCreditsPageCastListNode); -movie.Credits=credits; -} - -#regionParseRelaseInfoPage -stringreleaseInfoURL=moviePageUrl+"/"+IMDbConstants.ReleaseInfoPath; -WebRequestreleaseInfoPageRequest=HttpHelper.InitializeWebRequest(releaseInfoURL,settings); -HtmlDocumentreleaseInfoPageDocument=HtmlHelper.GetNewHtmlDocument(); -using(Streamstream=HttpHelper.GetResponseStream(releaseInfoPageRequest,settings)) -{ -releaseInfoPageDocument.Load(stream,Encoding.UTF8); -} -ReleaseInfoPageHelper.Parse(movie,releaseInfoPageDocument,settings); -#endregion -#regionParseRatings -MatchratingMatch=IMDbConstants.RatingJSONLDMatcher.Match(documentNode.InnerHtml); -if(ratingMatch.Success) -{ -stringratingContextJSON=ratingMatch.Value; -stringratingValue=IMDbConstants.RatingValueMatcher.Match(ratingContextJSON).Groups?[1].Value.Prepare(); -stringratingCount=IMDbConstants.RatingCountMatcher.Match(ratingContextJSON).Groups?[1].Value.Prepare(); -movie.Rating=newRating(DataSourceTypeEnum.IMDb,movie); -movie.Rating.Value=ParseRatingValue(ratingValue); -movie.Rating.RateCount=ratingCount.Replace(",",string.Empty).ToLong(); -} -#endregion - -#regionParsePhotoGalleryPage -if(settings.MediaImagesFetchCount>0) -{ -PhotoGalleryPageHelper.Parse(movie,moviePageUrl,settings); -} -#endregion -returntrue; -} - -privatestaticdoubleParseRatingValue(stringratingString) -{ -stringdecSep=System.Globalization.NumberFormatInfo.CurrentInfo.NumberDecimalSeparator; -if(decSep==",")ratingString=ratingString.Replace('.',','); -doublevalue=double.Parse(ratingString); -returnvalue; -} - -privatestaticvoidParseCastListAsLegacyTable(Moviemovie,List<Credit>credits,HtmlNodecastListNode) -{ -if(castListNode!=null) -{ -foreach(HtmlNodecastNodeincastListNode.QuerySelectorAll("tr")) -{ -IEnumerable<HtmlNode>castColumns=castNode.QuerySelectorAll("td"); -if(castColumns!=null&&castColumns.Count()==4) -{ -HtmlNodepersonNode=castColumns.ElementAt(1); -HtmlNodecharactersNode=castColumns.ElementAt(3); - -ActingCreditactingCredit=newActingCredit(); -actingCredit.Person=newActor(); -MatchpersonIDMatch=IMDbConstants.PersonIDURLMatcher.Match(personNode.QuerySelector("a").Attributes["href"].Value); -if(personIDMatch.Success&&personIDMatch.Groups.Count>1) -{ -actingCredit.Person.IMDbID=personIDMatch.Groups[1].Value.ToLong(); -actingCredit.Person.FullName=personNode.InnerText.Prepare(); -} - -List<Character>characters=newList<Character>(); -foreach(HtmlNodecharacterNodeincharactersNode.QuerySelectorAll("a")) -{ -Charactercharacter=GetCharacter(characterNode,movie); -if(character!=null) -{ -characters.Add(character); -} +alternativePosterURL=metadata.Image; +} +} + +HtmlNodeposterWrapperNode=documentNode.QuerySelector("[data-testid=hero-media__poster]"); +if(posterWrapperNode!=null) +{ +HtmlNodeposterNode=posterWrapperNode.QuerySelector("img"); +if(posterNode!=null) +{ +movie.Poster=newImage +{ +Title=posterNode.GetAttributeValue("alt",string.Empty).Prepare(), +URL=IMDBImageHelper.NormalizeImageUrl(posterNode.GetAttributeValue("src",string.Empty)) +}; +if(settings.FetchImageContents) +{ +movie.Poster.Content=IMDBImageHelper.GetImageContent(movie.Poster.URL); +} +} +} +elseif(!string.IsNullOrEmpty(alternativePosterURL)) +{ +//Useposterfrommetadata +movie.Poster=newImage{URL=alternativePosterURL}; +if(settings.FetchImageContents) +{ +movie.Poster.Content=IMDBImageHelper.GetImageContent(movie.Poster.URL); +} +} + +//ParseSummary +HtmlNodesummaryWrapper=documentNode.QuerySelector("[data-testid=plot]"); +if(summaryWrapper!=null) +{ +HtmlNodesummaryText=summaryWrapper.Children().LastOrDefault(e=>!string.IsNullOrEmpty(e.InnerText)); +if(summaryText!=null) +{ +movie.PlotSummary=summaryText.InnerText.Prepare(); +if(movie.PlotSummary.StartsWith(IMDbConstants.EmptyPlotText)) +{ +movie.PlotSummary=string.Empty; +} +} +} +else +{ +returnfalse; +} +HtmlNodesummaryCreditsWrapper=documentNode.QuerySelector("[data-testid=title-pc-wide-screen]"); +List<Credit>credits=newList<Credit>(); +if(summaryCreditsWrapper!=null) +{ +foreach(HtmlNodecreditSummaryNodeinsummaryCreditsWrapper.QuerySelectorAll("[data-testid=title-pc-principal-credit]")) +{ +List<Credit>summaryCredits=SummaryCastHelper.GetCreditInfo(creditSummaryNode); +if(summaryCredits!=null&&summaryCredits.Count>0) +{ +credits.AddRange(summaryCredits); +} +} +} + +//ParseStoryLine +HtmlNodestoryLineSection=documentNode.QuerySelector("[data-testid=Storyline]"); +if(storyLineSection!=null) +{ +SummaryStorylineHelper.Parse(movie,storyLineSection); +} + +//ParseDetailsSection +HtmlNodedetailsSection=documentNode.QuerySelector("[data-testid=title-details-section]>ul"); +if(detailsSection!=null) +{ +ParseDetailsSection(movie,detailsSection); +} + +//ParseTechnicalSpecsSection +HtmlNodetechnicalSpecsSection=documentNode.QuerySelector("[data-testid=title-techspecs-section]>ul"); +if(technicalSpecsSection!=null) +{ +ParseDetailsSection(movie,technicalSpecsSection); +} + +if(!settings.FetchDetailedCast) +{ +//ParseCastTable +HtmlNodecastListNode=documentNode.QuerySelector("[data-testid=title-cast]"); +SummaryCreditsHelper.ParseCastList(movie,credits,castListNode); +} +else +{ +//Fetchcreditsthroughfullcreditspage +stringfullCreditsUrl=moviePageUrl+"/"+IMDbConstants.FullCreditsPath; +WebRequestfullCreditsPageRequest=HttpHelper.InitializeWebRequest(fullCreditsUrl,settings); +HtmlDocumentcreditsPageDocument=HtmlHelper.GetNewHtmlDocument(); +using(Streamstream=HttpHelper.GetResponseStream(fullCreditsPageRequest,settings)) +{ +creditsPageDocument.Load(stream,Encoding.UTF8); +} +HtmlNodefullCreditsPageDocumentNode=creditsPageDocument.DocumentNode; +HtmlNodefullCreditsPageCastListNode=fullCreditsPageDocumentNode.QuerySelector(".cast_list"); +ParseCastListAsLegacyTable(movie,credits,fullCreditsPageCastListNode); +movie.Credits=credits; +} + +#regionParseRelaseInfoPage +stringreleaseInfoURL=moviePageUrl+"/"+IMDbConstants.ReleaseInfoPath; +WebRequestreleaseInfoPageRequest=HttpHelper.InitializeWebRequest(releaseInfoURL,settings); +HtmlDocumentreleaseInfoPageDocument=HtmlHelper.GetNewHtmlDocument(); +using(Streamstream=HttpHelper.GetResponseStream(releaseInfoPageRequest,settings)) +{ +releaseInfoPageDocument.Load(stream,Encoding.UTF8); +} +ReleaseInfoPageHelper.Parse(movie,releaseInfoPageDocument,settings); +#endregion +#regionParseRatings +MatchratingMatch=IMDbConstants.RatingJSONLDMatcher.Match(documentNode.InnerHtml); +if(ratingMatch.Success) +{ +stringratingContextJSON=ratingMatch.Value; +stringratingValue=IMDbConstants.RatingValueMatcher.Match(ratingContextJSON).Groups?[1].Value.Prepare(); +stringratingCount=IMDbConstants.RatingCountMatcher.Match(ratingContextJSON).Groups?[1].Value.Prepare(); +movie.Rating=newRating(DataSourceTypeEnum.IMDb,movie); +movie.Rating.Value=ParseRatingValue(ratingValue); +movie.Rating.RateCount=ratingCount.Replace(",",string.Empty).ToLong(); +} +#endregion + +#regionParsePhotoGalleryPage +if(settings.MediaImagesFetchCount>0) +{ +PhotoGalleryPageHelper.Parse(movie,moviePageUrl,settings); +} +#endregion +returntrue; +} + +privatestaticdoubleParseRatingValue(stringratingString) +{ +stringdecSep=System.Globalization.NumberFormatInfo.CurrentInfo.NumberDecimalSeparator; +if(decSep==",")ratingString=ratingString.Replace('.',','); +doublevalue=double.Parse(ratingString); +returnvalue; +} + +privatestaticvoidParseCastListAsLegacyTable(Moviemovie,List<Credit>credits,HtmlNodecastListNode) +{ +if(castListNode!=null) +{ +foreach(HtmlNodecastNodeincastListNode.QuerySelectorAll("tr")) +{ +IEnumerable<HtmlNode>castColumns=castNode.QuerySelectorAll("td"); +if(castColumns!=null&&castColumns.Count()==4) +{ +HtmlNodepersonNode=castColumns.ElementAt(1); +HtmlNodecharactersNode=castColumns.ElementAt(3); + +ActingCreditactingCredit=newActingCredit(); +actingCredit.Person=newActor(); +MatchpersonIDMatch=IMDbConstants.PersonIDURLMatcher.Match(personNode.QuerySelector("a").Attributes["href"].Value); +if(personIDMatch.Success&&personIDMatch.Groups.Count>1) +{ +actingCredit.Person.IMDbID=personIDMatch.Groups[1].Value.ToLong(); +actingCredit.Person.FullName=personNode.InnerText.Prepare(); } -if(characters.Count==0) -{ -Charactercharacter=GetCharacter(charactersNode.FirstChild,movie); -if(character!=null&&(!string.IsNullOrEmpty(character.Name)||character.IMDbID!=null)) -{ -characters.Add(character); -} -} -actingCredit.Characters=characters; -credits.Add(actingCredit); -} -} -movie.Credits=credits; -} -} - -privatestaticCharacterGetCharacter(HtmlNodecharacterNode,Moviemovie) -{ -if(!characterNode.GetClasses().Any(e=>e=="toggle-episodes")) -{ -Charactercharacter=null; -if(movieisTVSeries) -{ -character=newTVCharacter(); -} -else -{ -character=newCharacter(); -} - -HtmlNodeepisodeInformationNode=characterNode.ParentNode.QuerySelector(".toggle-episodes"); -if(episodeInformationNode==null) + +List<Character>characters=newList<Character>(); +foreach(HtmlNodecharacterNodeincharactersNode.QuerySelectorAll("a")) +{ +Charactercharacter=GetCharacter(characterNode,movie); +if(character!=null) +{ +characters.Add(character); +} +} +if(characters.Count==0) +{ +Charactercharacter=GetCharacter(charactersNode.FirstChild,movie); +if(character!=null&&(!string.IsNullOrEmpty(character.Name)||character.IMDbID!=null)) +{ +characters.Add(character); +} +} +actingCredit.Characters=characters; +credits.Add(actingCredit); +} +} +movie.Credits=credits; +} +} + +privatestaticCharacterGetCharacter(HtmlNodecharacterNode,Moviemovie) +{ +if(!characterNode.GetClasses().Any(e=>e=="toggle-episodes")) +{ +Charactercharacter=null; +if(movieisTVSeries) { -character.Name=Regex.Replace(Regex.Replace(characterNode.InnerText.Prepare(),@"\n",string.Empty),@"\s+",@"").Trim(); +character=newTVCharacter(); } else { -character.Name=Regex.Replace(Regex.Replace(characterNode.InnerText.Prepare(),@"\n",string.Empty),@"\s+",@"").Trim(); -MatchcharacterEpisodeInfoMatch=IMDbConstants.CharacterEpisodeInfoRegex.Match(episodeInformationNode.InnerText.Prepare()); -if(characterEpisodeInfoMatch.Success) -{ -TVCharactertvCharacter=characterasTVCharacter; -tvCharacter.EpisodeCount=characterEpisodeInfoMatch.Groups[1].Value.ToInteger(); -tvCharacter.StartYear=characterEpisodeInfoMatch.Groups[2].Value.ToInteger(); -if(characterEpisodeInfoMatch.Groups.Count>3) -{ -tvCharacter.EndYear=characterEpisodeInfoMatch.Groups[3].Value.ToInteger(); -} -} -} -if(IMDbConstants.CharacterRegex.IsMatch(characterNode.OuterHtml)) -{ -character.IMDbID=IMDbConstants.CharacterRegex.Match(characterNode.OuterHtml).Groups[1].Value.ToLong(); -} -returncharacter; -} -else -{ -returnnull; -} -} - -publicstaticvoidParseDetailsSection(Moviemovie,HtmlNodedetailsSection) -{ -foreach(HtmlNodedetailBoxindetailsSection.ChildNodes.Where(e=>e.Name=="li")) -{ -HtmlNodeheaderNode=detailBox.FirstChild; -if(headerNode!=null) -{ -stringheaderContent=headerNode.InnerText.Prepare(); -if(IMDbConstants.OfficialSitesHeaderRegex.IsMatch(headerContent)) -{ -List<OfficialSite>officialSites=newList<OfficialSite>(); -foreach(HtmlNodeofficialSiteLinkindetailBox.QuerySelectorAll("a")) -{ -stringurl=officialSiteLink.Attributes["href"].Value; -officialSites.Add(newOfficialSite -{ -Title=officialSiteLink.InnerText.Prepare(), -URL=url -}); -} -movie.OfficialSites=officialSites; -} -elseif(IMDbConstants.CountriesHeaderRegex.IsMatch(headerContent)) -{ -List<ProductionCountry>countries=newList<ProductionCountry>(); -foreach(HtmlNodecountryLinkindetailBox.QuerySelectorAll("a")) -{ -MatchcountryMatch=IMDbConstants.CountryOfOriginRegex.Match(countryLink.OuterHtml); -if(countryMatch.Success) -{ -Countrycountry=newCountry -{ -Identifier=countryMatch.Groups[1].Value, -Name=countryLink.InnerText.Prepare() -}; -countries.Add(newProductionCountry -{ -Country=country, -Production=movie -}); -} -} -movie.Countries=countries; -} -elseif(IMDbConstants.LanguagesHeaderRegex.IsMatch(headerContent)) -{ -List<ProductionLanguage>languages=newList<ProductionLanguage>(); -foreach(HtmlNodelanguageLinkindetailBox.QuerySelectorAll("a")) -{ -MatchlanguageMatch=IMDbConstants.PrimaryLanguageRegex.Match(languageLink.OuterHtml); -if(languageMatch.Success) -{ -Languagelanguage=newLanguage -{ -Identifier=languageMatch.Groups[1].Value, -Name=languageLink.InnerText.Prepare() -}; -languages.Add(newProductionLanguage() -{ -Language=language, -Production=movie -}); -} -} -movie.Languages=languages; -} -elseif(IMDbConstants.ReleaseDateHeaderRegex.IsMatch(headerContent)) -{ -//ReleaseDatesarefetchedfromreleaseinfopageseperately -} -elseif(IMDbConstants.AKAHeaderRegex.IsMatch(headerContent)) -{ -AKAaka=newAKA -{ -Name=headerNode.NextSibling.InnerText.Prepare() -}; -movie.AKAs=newList<AKA>(){aka}; -} -elseif(IMDbConstants.FilmingLocationsHeaderRegex.IsMatch(headerContent)) -{ -List<string>filmingLocations=newList<string>(); -foreach(HtmlNodelocationLinkNodeinheaderNode.ParentNode.QuerySelectorAll("a")) -{ -MatchlocationLinkMatch=IMDbConstants.LocationsLinkRegex.Match(locationLinkNode.OuterHtml); -if(locationLinkMatch.Success) -{ -filmingLocations.Add(locationLinkMatch.Groups[1].Value.Prepare()); -} -} -movie.FilmingLocations=filmingLocations; -} -elseif(IMDbConstants.BudgetHeaderRegex.IsMatch(headerContent)) -{ -movie.Budget=newBudget(); -movie.Budget.Amount=headerNode.NextSibling.InnerText.Prepare().ToAmount(); -movie.Budget.Description=string.Empty; -foreach(HtmlNodeattributeNodeinheaderNode.ParentNode.QuerySelectorAll(".attribute")) -{ -MatchattributeMatch=GeneralRegexConstants.PharantesisRegex.Match(attributeNode.InnerText.Prepare()); -if(attributeMatch.Success) -{ -if(!string.IsNullOrEmpty(movie.Budget.Description)) -{ -movie.Budget.Description+=""; -} -movie.Budget.Description+=attributeMatch.Groups[1].Value; -} -} -} -elseif(IMDbConstants.ProductionCompanyHeaderRegex.IsMatch(headerContent)) -{ -List<Company>productionCompanies=newList<Company>(); -foreach(HtmlNodeproductionCompanyNodeinheaderNode.ParentNode.QuerySelectorAll("a")) -{ -MatchcompanyIDMatch=IMDbConstants.ProductionCompanyLinkRegex.Match(productionCompanyNode.Attributes["href"].Value); -if(companyIDMatch.Success) -{ -CompanyproductionCompany=newCompany(); -productionCompany.Name=productionCompanyNode.InnerText.Prepare(); -productionCompany.ID=companyIDMatch.Groups[1].Value.ToLong(); -productionCompanies.Add(productionCompany); -} -} -movie.ProductionCompanies=productionCompanies; -} -elseif(IMDbConstants.RuntimeHeaderRegex.IsMatch(headerContent)) -{ -HtmlNodetimeNode=headerNode.ParentNode.QuerySelector("time"); -if(timeNode!=null) -{ -movie.Runtime=timeNode.Attributes["datetime"].Value.ToHtmlTimeSpan(); -} -else -{ -movie.Runtime=detailBox.LastChild.InnerText.Prepare().HumanReadableToTimeSpan(); -} -} -} -} -} - -} -} +character=newCharacter(); +} + +HtmlNodeepisodeInformationNode=characterNode.ParentNode.QuerySelector(".toggle-episodes"); +if(episodeInformationNode==null) +{ +character.Name=Regex.Replace(Regex.Replace(characterNode.InnerText.Prepare(),@"\n",string.Empty),@"\s+",@"").Trim(); +} +else +{ +character.Name=Regex.Replace(Regex.Replace(characterNode.InnerText.Prepare(),@"\n",string.Empty),@"\s+",@"").Trim(); +MatchcharacterEpisodeInfoMatch=IMDbConstants.CharacterEpisodeInfoRegex.Match(episodeInformationNode.InnerText.Prepare()); +if(characterEpisodeInfoMatch.Success) +{ +TVCharactertvCharacter=characterasTVCharacter; +tvCharacter.EpisodeCount=characterEpisodeInfoMatch.Groups[1].Value.ToInteger(); +tvCharacter.StartYear=characterEpisodeInfoMatch.Groups[2].Value.ToInteger(); +if(characterEpisodeInfoMatch.Groups.Count>3) +{ +tvCharacter.EndYear=characterEpisodeInfoMatch.Groups[3].Value.ToInteger(); +} +} +} +if(IMDbConstants.CharacterRegex.IsMatch(characterNode.OuterHtml)) +{ +character.IMDbID=IMDbConstants.CharacterRegex.Match(characterNode.OuterHtml).Groups[1].Value.ToLong(); +} +returncharacter; +} +else +{ +returnnull; +} +} + +publicstaticvoidParseDetailsSection(Moviemovie,HtmlNodedetailsSection) +{ +foreach(HtmlNodedetailBoxindetailsSection.ChildNodes.Where(e=>e.Name=="li")) +{ +HtmlNodeheaderNode=detailBox.FirstChild; +if(headerNode!=null) +{ +stringheaderContent=headerNode.InnerText.Prepare(); +if(IMDbConstants.OfficialSitesHeaderRegex.IsMatch(headerContent)) +{ +List<OfficialSite>officialSites=newList<OfficialSite>(); +foreach(HtmlNodeofficialSiteLinkindetailBox.QuerySelectorAll("a")) +{ +stringurl=officialSiteLink.Attributes["href"].Value; +officialSites.Add(newOfficialSite +{ +Title=officialSiteLink.InnerText.Prepare(), +URL=url +}); +} +movie.OfficialSites=officialSites; +} +elseif(IMDbConstants.CountriesHeaderRegex.IsMatch(headerContent)) +{ +List<ProductionCountry>countries=newList<ProductionCountry>(); +foreach(HtmlNodecountryLinkindetailBox.QuerySelectorAll("a")) +{ +MatchcountryMatch=IMDbConstants.CountryOfOriginRegex.Match(countryLink.OuterHtml); +if(countryMatch.Success) +{ +Countrycountry=newCountry +{ +Identifier=countryMatch.Groups[1].Value, +Name=countryLink.InnerText.Prepare() +}; +countries.Add(newProductionCountry +{ +Country=country, +Production=movie +}); +} +} +movie.Countries=countries; +} +elseif(IMDbConstants.LanguagesHeaderRegex.IsMatch(headerContent)) +{ +List<ProductionLanguage>languages=newList<ProductionLanguage>(); +foreach(HtmlNodelanguageLinkindetailBox.QuerySelectorAll("a")) +{ +MatchlanguageMatch=IMDbConstants.PrimaryLanguageRegex.Match(languageLink.OuterHtml); +if(languageMatch.Success) +{ +Languagelanguage=newLanguage +{ +Identifier=languageMatch.Groups[1].Value, +Name=languageLink.InnerText.Prepare() +}; +languages.Add(newProductionLanguage() +{ +Language=language, +Production=movie +}); +} +} +movie.Languages=languages; +} +elseif(IMDbConstants.ReleaseDateHeaderRegex.IsMatch(headerContent)) +{ +//ReleaseDatesarefetchedfromreleaseinfopageseperately +} +elseif(IMDbConstants.AKAHeaderRegex.IsMatch(headerContent)) +{ +AKAaka=newAKA +{ +Name=headerNode.NextSibling.InnerText.Prepare() +}; +movie.AKAs=newList<AKA>(){aka}; +} +elseif(IMDbConstants.FilmingLocationsHeaderRegex.IsMatch(headerContent)) +{ +List<string>filmingLocations=newList<string>(); +foreach(HtmlNodelocationLinkNodeinheaderNode.ParentNode.QuerySelectorAll("a")) +{ +MatchlocationLinkMatch=IMDbConstants.LocationsLinkRegex.Match(locationLinkNode.OuterHtml); +if(locationLinkMatch.Success) +{ +filmingLocations.Add(locationLinkMatch.Groups[1].Value.Prepare()); +} +} +movie.FilmingLocations=filmingLocations; +} +elseif(IMDbConstants.BudgetHeaderRegex.IsMatch(headerContent)) +{ +movie.Budget=newBudget(); +movie.Budget.Amount=headerNode.NextSibling.InnerText.Prepare().ToAmount(); +movie.Budget.Description=string.Empty; +foreach(HtmlNodeattributeNodeinheaderNode.ParentNode.QuerySelectorAll(".attribute")) +{ +MatchattributeMatch=GeneralRegexConstants.PharantesisRegex.Match(attributeNode.InnerText.Prepare()); +if(attributeMatch.Success) +{ +if(!string.IsNullOrEmpty(movie.Budget.Description)) +{ +movie.Budget.Description+=""; +} +movie.Budget.Description+=attributeMatch.Groups[1].Value; +} +} +} +elseif(IMDbConstants.ProductionCompanyHeaderRegex.IsMatch(headerContent)) +{ +List<Company>productionCompanies=newList<Company>(); +foreach(HtmlNodeproductionCompanyNodeinheaderNode.ParentNode.QuerySelectorAll("a")) +{ +MatchcompanyIDMatch=IMDbConstants.ProductionCompanyLinkRegex.Match(productionCompanyNode.Attributes["href"].Value); +if(companyIDMatch.Success) +{ +CompanyproductionCompany=newCompany(); +productionCompany.Name=productionCompanyNode.InnerText.Prepare(); +productionCompany.ID=companyIDMatch.Groups[1].Value.ToLong(); +productionCompanies.Add(productionCompany); +} +} +movie.ProductionCompanies=productionCompanies; +} +elseif(IMDbConstants.RuntimeHeaderRegex.IsMatch(headerContent)) +{ +HtmlNodetimeNode=headerNode.ParentNode.QuerySelector("time"); +if(timeNode!=null) +{ +movie.Runtime=timeNode.Attributes["datetime"].Value.ToHtmlTimeSpan(); +} +else +{ +movie.Runtime=detailBox.LastChild.InnerText.Prepare().HumanReadableToTimeSpan(); +} +} +} +} +} + +} +} diff --git a/docs/xml/d8/d1b/_person_page_helper_8cs.xml b/docs/xml/d8/d1b/_person_page_helper_8cs.xml index a78c51d..1e31398 100644 --- a/docs/xml/d8/d1b/_person_page_helper_8cs.xml +++ b/docs/xml/d8/d1b/_person_page_helper_8cs.xml @@ -109,91 +109,94 @@ inttitleYear=default(int); int?titleEndYear=null; -stringtitleYearString=titleYearElement.InnerText; -MatchtitleYearMatch=IMDbConstants.CreditYearRegex.Match(titleYearString); -if(titleYearMatch.Success) -{ -titleYear=titleYearMatch.Groups[1].Value.ToInteger(); -if(titleYearMatch.Groups.Count>=4&&titleYearMatch.Groups[3].Success) -{ -titleEndYear=titleYearMatch.Groups[3].Value.ToInteger(); -} -} - -HtmlNoderoleElement=knownForTitleNode.QuerySelector(".ipc-primary-image-list-card__content-mid-bottom"); -HtmlNodemovieLink=knownForTitleNode.QuerySelector(".ipc-primary-image-list-card__content-topa"); -ProductionCreditknownFor=newProductionCredit(); -if(titleEndYear!=null) -{ -knownFor.Production=newTVSeries{EndYear=(int)titleEndYear}; -} -else -{ -knownFor.Production=newMovie(); -} - -knownFor.Production.IMDbID=(long)IMDBIDHelper.GetIDFromUrl(movieLink.Attributes["href"].Value); -knownFor.Production.Title=movieLink.InnerText.Prepare(); -knownFor.Production.Year=titleYear; - -stringrole=roleElement.QuerySelector("span").InnerText.Prepare(); -if(!Enum.TryParse(role,outCreditRoleTyperoleType)) -{ -roleType=CreditRoleType.Acting; -if(person.Gender==GenderEnum.Male) -{ -roleType=CreditRoleType.Actor; -} -elseif(person.Gender==GenderEnum.Female) -{ -roleType=CreditRoleType.Actress; -} -} - -knownFor.Credit=newCreditFactory().Build(roleType); -knownFor.Credit.RoleType=roleType; -knownFor.Credit.Person=person; -if(roleType==CreditRoleType.Actor||roleType==CreditRoleType.Actress||roleType==CreditRoleType.Acting) -{ -ActingCreditactingCredit=(ActingCredit)knownFor.Credit; -actingCredit.Characters=newCharacter[] -{ -newCharacter -{ -Name=role -} -}; -} - -knowForCredits.Add(knownFor); -} -person.KnownFor=knowForCredits; -} -#endregion -} - -privatestaticvoidDetectGender(Personperson,HtmlNode[]filmogpaphyCategories) -{ -HtmlNodeactingCategory=filmogpaphyCategories.FirstOrDefault((categoryWrapper)=> -{ -stringcategoryName=categoryWrapper.InnerText; -returncategoryName==IMDbConstants.ActorCategoryName||categoryName==IMDbConstants.ActressCategoryName; -}); -if(actingCategory!=null) -{ -stringcategoryName=actingCategory.InnerText; -if(categoryName==IMDbConstants.ActorCategoryName) -{ -person.Gender=GenderEnum.Male; -} -elseif(categoryName==IMDbConstants.ActressCategoryName) -{ -person.Gender=GenderEnum.Female; -} -} -} -} -} +if(titleYearElement!=null) +{ +stringtitleYearString=titleYearElement.InnerText; +MatchtitleYearMatch=IMDbConstants.CreditYearRegex.Match(titleYearString); +if(titleYearMatch.Success) +{ +titleYear=titleYearMatch.Groups[1].Value.ToInteger(); +if(titleYearMatch.Groups.Count>=4&&titleYearMatch.Groups[3].Success) +{ +titleEndYear=titleYearMatch.Groups[3].Value.ToInteger(); +} +} +} + +HtmlNoderoleElement=knownForTitleNode.QuerySelector(".ipc-primary-image-list-card__content-mid-bottom"); +HtmlNodemovieLink=knownForTitleNode.QuerySelector(".ipc-primary-image-list-card__content-topa"); +ProductionCreditknownFor=newProductionCredit(); +if(titleEndYear!=null) +{ +knownFor.Production=newTVSeries{EndYear=(int)titleEndYear}; +} +else +{ +knownFor.Production=newMovie(); +} + +knownFor.Production.IMDbID=(long)IMDBIDHelper.GetIDFromUrl(movieLink.Attributes["href"].Value); +knownFor.Production.Title=movieLink.InnerText.Prepare(); +knownFor.Production.Year=titleYear; + +stringrole=roleElement.QuerySelector("span").InnerText.Prepare(); +if(!Enum.TryParse(role,outCreditRoleTyperoleType)) +{ +roleType=CreditRoleType.Acting; +if(person.Gender==GenderEnum.Male) +{ +roleType=CreditRoleType.Actor; +} +elseif(person.Gender==GenderEnum.Female) +{ +roleType=CreditRoleType.Actress; +} +} + +knownFor.Credit=newCreditFactory().Build(roleType); +knownFor.Credit.RoleType=roleType; +knownFor.Credit.Person=person; +if(roleType==CreditRoleType.Actor||roleType==CreditRoleType.Actress||roleType==CreditRoleType.Acting) +{ +ActingCreditactingCredit=(ActingCredit)knownFor.Credit; +actingCredit.Characters=newCharacter[] +{ +newCharacter +{ +Name=role +} +}; +} + +knowForCredits.Add(knownFor); +} +person.KnownFor=knowForCredits; +} +#endregion +} + +privatestaticvoidDetectGender(Personperson,HtmlNode[]filmogpaphyCategories) +{ +HtmlNodeactingCategory=filmogpaphyCategories.FirstOrDefault((categoryWrapper)=> +{ +stringcategoryName=categoryWrapper.InnerText; +returncategoryName==IMDbConstants.ActorCategoryName||categoryName==IMDbConstants.ActressCategoryName; +}); +if(actingCategory!=null) +{ +stringcategoryName=actingCategory.InnerText; +if(categoryName==IMDbConstants.ActorCategoryName) +{ +person.Gender=GenderEnum.Male; +} +elseif(categoryName==IMDbConstants.ActressCategoryName) +{ +person.Gender=GenderEnum.Female; +} +} +} +} +} diff --git a/docs/xml/de/dc9/_basic_person_scraping_tests_8cs.xml b/docs/xml/de/dc9/_basic_person_scraping_tests_8cs.xml index 2536f8b..fad7dff 100644 --- a/docs/xml/de/dc9/_basic_person_scraping_tests_8cs.xml +++ b/docs/xml/de/dc9/_basic_person_scraping_tests_8cs.xml @@ -24,7 +24,7 @@ [TestClass] publicclassBasicPersonScrapingTests { -privatestaticreadonlylong[]personIDsToTest=newlong[]{18652,3614913,5253,1297015,3614913,1877}; +privatestaticreadonlylong[]personIDsToTest=newlong[]{325717,18652,3614913,5253,1297015,3614913,1877}; [TestMethod] publicvoidPersonScraping() diff --git a/docs/xml/df/d76/_debug_2netstandard2_80_2_j_movies_8_i_m_db_8_assembly_info_8cs.xml b/docs/xml/df/d76/_debug_2netstandard2_80_2_j_movies_8_i_m_db_8_assembly_info_8cs.xml index 53bbb32..518f9e8 100644 --- a/docs/xml/df/d76/_debug_2netstandard2_80_2_j_movies_8_i_m_db_8_assembly_info_8cs.xml +++ b/docs/xml/df/d76/_debug_2netstandard2_80_2_j_movies_8_i_m_db_8_assembly_info_8cs.xml @@ -25,11 +25,11 @@ [assembly:System.Reflection.AssemblyCopyrightAttribute("JnRMnT")] [assembly:System.Reflection.AssemblyDescriptionAttribute("JMoviesIMDbDataProviderLibrary-Currentlysupportson-demandscreenscraping"+ "fromIMDbtoreceivemovieandpersondetails.")] -[assembly:System.Reflection.AssemblyFileVersionAttribute("1.8.3.0")] -[assembly:System.Reflection.AssemblyInformationalVersionAttribute("1.8.3")] +[assembly:System.Reflection.AssemblyFileVersionAttribute("1.8.4.0")] +[assembly:System.Reflection.AssemblyInformationalVersionAttribute("1.8.4")] [assembly:System.Reflection.AssemblyProductAttribute("JMovies.IMDb")] [assembly:System.Reflection.AssemblyTitleAttribute("JMovies.IMDb")] -[assembly:System.Reflection.AssemblyVersionAttribute("1.8.3.0")] +[assembly:System.Reflection.AssemblyVersionAttribute("1.8.4.0")] [assembly:System.Reflection.AssemblyMetadataAttribute("RepositoryUrl","https://github.com/JnRMnT/JMovies.IMDb")] //MSBuildWriteCodeFragmentsınıfıtarafındanoluşturuldu.