home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
Development
Submit: Movie Info Grabbers
[Russian] kinopoisk.ru
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="RabinoVich" data-source="post: 1169580" data-attributes="member: 100769"><p>Не иначе!</p><p>Итак, сон пришлось ненадолго отложить, зато удалось добиться относительно красивого результата:</p><p></p><p>[code=csharp]</p><p> // Review (Trivia)</p><p> string rx_trivia_block = @"Знаете.ли.вы..что...[\s\S]+?<tr(?<movieTrivias>[\s\S]+?)<\/tr>";</p><p> string rx_triviaerror_block = @"Ошибки.в.фильме[\s\S]+?<tr(?<movieTriviaErrors>[\s\S]+?)<\/tr>";</p><p> string triviaBlock = ParseSingleValue(detailsPage, rx_trivia_block, "movieTrivias", true);</p><p> string triviaErrorBlock = ParseSingleValue(detailsPage, rx_triviaerror_block, "movieTriviaErrors", true);</p><p> // string rx_trivia = @"<li.+?trivia.+?>(?<movieTrivia>.+?)</li>";</p><p> string rx_trivia = @"<li[^>]+?trivia.+?>(?<movieTrivia>.+?)</li>";</p><p> // ArrayList triviaList = Parse(detailsPage, rx_trivia);</p><p> ArrayList triviaList = Parse(triviaBlock, rx_trivia);</p><p> movieDetails.UserReview += "●●● Знаете ли вы, что... ●●●\n";</p><p> if (triviaList != null && triviaList.Count > 0) {</p><p> for(int i = 0; i < triviaList.Count; i++) {</p><p> Hashtable trivia = (Hashtable)triviaList[i];</p><p> string triviaText = (string)trivia["movieTrivia"];</p><p> triviaText = triviaText.Trim().Replace("\n", "");</p><p> triviaText = Normalize(triviaText);</p><p> triviaText = Utils.stripHTMLtags(triviaText);</p><p> DebugLog(detailsConfig.Debug, "Trivia: {0}", triviaText);</p><p> movieDetails.UserReview += "▪ "+triviaText+"\n";</p><p> }</p><p> }</p><p> // Review (Trivia) Errors</p><p> triviaList = Parse(triviaErrorBlock, rx_trivia);</p><p> movieDetails.UserReview += "\n●●● Ошибки в фильме ●●●\n";</p><p> if (triviaList != null && triviaList.Count > 0) {</p><p> for(int i = 0; i < triviaList.Count; i++) {</p><p> Hashtable trivia = (Hashtable)triviaList[i];</p><p> string triviaText = (string)trivia["movieTrivia"];</p><p> triviaText = triviaText.Trim().Replace("\n", "");</p><p> triviaText = Normalize(triviaText);</p><p> triviaText = Utils.stripHTMLtags(triviaText);</p><p> DebugLog(detailsConfig.Debug, "Trivia: {0}", triviaText);</p><p> movieDetails.UserReview += "▪ "+triviaText+"\n";</p><p> }</p><p> }</p><p> movieDetails.UserReview += "";</p><p> movieDetails.UserReview += "\nIMDB.com/title/"+imdbDetails;</p><p> movieDetails.UserReview += "\nKinopoisk.ru/film/"+movieID+" - "+movieTitle+" ["+movieDetails.Year+"]";</p><p> movieDetails.UserReview += "\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -";</p><p>[/code]</p><p>Строку 197 тоже подправил:</p><p>[code=xml] imdbDetails = movieDetails.IMDBNumber+" - "+omdbTitle+" ["+omdbYear+"]"; [/code]</p><p>Завтра надо будет ещё подобрать число дефисов.</p><p></p><p>[ATTACH]174227[/ATTACH] [ATTACH]174229[/ATTACH]</p><p></p><p>P.S. Я не сильно борзею, если попрошу ещё отдельным блоком запиливать "ошибки в фильме", помеченные как спойлеры? <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> У некоторых фильмов такие есть, например Марсианин</p></blockquote><p></p>
[QUOTE="RabinoVich, post: 1169580, member: 100769"] Не иначе! Итак, сон пришлось ненадолго отложить, зато удалось добиться относительно красивого результата: [code=csharp] // Review (Trivia) string rx_trivia_block = @"Знаете.ли.вы..что...[\s\S]+?<tr(?<movieTrivias>[\s\S]+?)<\/tr>"; string rx_triviaerror_block = @"Ошибки.в.фильме[\s\S]+?<tr(?<movieTriviaErrors>[\s\S]+?)<\/tr>"; string triviaBlock = ParseSingleValue(detailsPage, rx_trivia_block, "movieTrivias", true); string triviaErrorBlock = ParseSingleValue(detailsPage, rx_triviaerror_block, "movieTriviaErrors", true); // string rx_trivia = @"<li.+?trivia.+?>(?<movieTrivia>.+?)</li>"; string rx_trivia = @"<li[^>]+?trivia.+?>(?<movieTrivia>.+?)</li>"; // ArrayList triviaList = Parse(detailsPage, rx_trivia); ArrayList triviaList = Parse(triviaBlock, rx_trivia); movieDetails.UserReview += "●●● Знаете ли вы, что... ●●●\n"; if (triviaList != null && triviaList.Count > 0) { for(int i = 0; i < triviaList.Count; i++) { Hashtable trivia = (Hashtable)triviaList[i]; string triviaText = (string)trivia["movieTrivia"]; triviaText = triviaText.Trim().Replace("\n", ""); triviaText = Normalize(triviaText); triviaText = Utils.stripHTMLtags(triviaText); DebugLog(detailsConfig.Debug, "Trivia: {0}", triviaText); movieDetails.UserReview += "▪ "+triviaText+"\n"; } } // Review (Trivia) Errors triviaList = Parse(triviaErrorBlock, rx_trivia); movieDetails.UserReview += "\n●●● Ошибки в фильме ●●●\n"; if (triviaList != null && triviaList.Count > 0) { for(int i = 0; i < triviaList.Count; i++) { Hashtable trivia = (Hashtable)triviaList[i]; string triviaText = (string)trivia["movieTrivia"]; triviaText = triviaText.Trim().Replace("\n", ""); triviaText = Normalize(triviaText); triviaText = Utils.stripHTMLtags(triviaText); DebugLog(detailsConfig.Debug, "Trivia: {0}", triviaText); movieDetails.UserReview += "▪ "+triviaText+"\n"; } } movieDetails.UserReview += ""; movieDetails.UserReview += "\nIMDB.com/title/"+imdbDetails; movieDetails.UserReview += "\nKinopoisk.ru/film/"+movieID+" - "+movieTitle+" ["+movieDetails.Year+"]"; movieDetails.UserReview += "\n- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -"; [/code] Строку 197 тоже подправил: [code=xml] imdbDetails = movieDetails.IMDBNumber+" - "+omdbTitle+" ["+omdbYear+"]"; [/code] Завтра надо будет ещё подобрать число дефисов. [ATTACH]174227[/ATTACH] [ATTACH]174229[/ATTACH] P.S. Я не сильно борзею, если попрошу ещё отдельным блоком запиливать "ошибки в фильме", помеченные как спойлеры? :) У некоторых фильмов такие есть, например Марсианин [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
Development
Submit: Movie Info Grabbers
[Russian] kinopoisk.ru
Contact us
RSS
Top
Bottom