Парсер кинопоиска в Excel
Я Саша, .NET Fullstack разработчик. Недавно помогал заказчику выгружать информацию с кинопоиска в Excel. Заказчик проводит какое-то аналитическое исследование, определяет какие фильмы имеют тенденцию получать высший рейтинг. Ниже код, если захотите повторить. А если вам лень писать самому - обрайщайтесь ко мне!
using HtmlAgilityPack;
using System;
using System.Linq;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
var url = "https://www.kinopoisk.ru/film/447/";
// Load the HTML from the URL
var httpClient = new HttpClient();
var html = await httpClient.GetStringAsync(url);
// Parse the HTML
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
// Extract the main data
var titleNode = htmlDoc.DocumentNode.SelectSingleNode("//h1[@itemprop='name']//span");
var originalTitleNode = htmlDoc.DocumentNode.SelectSingleNode("//span[@class='styles_originalTitle__JaNKM']");
var ratingNode = htmlDoc.DocumentNode.SelectSingleNode("//span[@class='styles_ratingPositive__dzFSI']");
var ratingCountNode = htmlDoc.DocumentNode.SelectSingleNode("//div[@class='styles_countBlock__jxRDI']//span[@class='styles_count__iOIwD']");
var movieTitle = titleNode?.InnerText.Trim();
var originalTitle = originalTitleNode?.InnerText.Trim();
var rating = ratingNode?.InnerText.Trim();
var ratingCount = ratingCountNode?.InnerText.Trim();
// Print the extracted data
Console.WriteLine($"Title: {movieTitle}");
Console.WriteLine($"Original Title: {originalTitle}");
Console.WriteLine($"Rating: {rating}");
Console.WriteLine($"Rating Count: {ratingCount}");
}
}