Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как на c# парсить сайты и узнавать их заголовки?

Armagedone YT Ученик (180), на голосовании 7 месяцев назад
Всем привет! Можно ли на c# парсить сайты?
или можно ли на c# найти сайт по его заголовку?
Хочу сделать консольное приложение на c#
где можно ввести запрос и приложение выведет сайты под этот запрос.
Можно ли такое сделать?
Голосование за лучший ответ
Беспрекословный Эксперт Мыслитель (6491) 8 месяцев назад
Да, на C# можно написать парсер для получения информации о сайтах, включая их заголовки. Для этого обычно используют библиотеки, такие как HtmlAgilityPack для парсинга HTML и HttpClient для отправки HTTP-запросов.

Пример простого кода, который выводит заголовки сайта, может выглядеть следующим образом:
 using System; 
using System.Net.Http;
using HtmlAgilityPack;

class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
Console.Write("Введите URL сайта: ");
string url = Console.ReadLine();

// Отправляем GET-запрос к сайту
using (HttpClient client = new HttpClient())
{
HttpResponseMessage response = await client.GetAsync(url);

if (response.IsSuccessStatusCode)
{
// Получаем HTML-код страницы
string html = await response.Content.ReadAsStringAsync();

// Используем HtmlAgilityPack для парсинга HTML
var doc = new HtmlDocument();
doc.LoadHtml(html);

// Получаем заголовок страницы
var titleNode = doc.DocumentNode.SelectSingleNode("//title");
string title = titleNode != null ? titleNode.InnerText.Trim() : "Заголовок не найден";

Console.WriteLine($"Заголовок сайта '{url}': {title}");
}
else
{
Console.WriteLine($"Ошибка при запросе: {response.StatusCode}");
}
}
}
}
Примечание:

Убедитесь, что в вашем проекте установлен пакет HtmlAgilityPack через NuGet Package Manager.
Этот пример делает простой GET-запрос и получает заголовок страницы. Для более сложных задач, таких как поиск сайтов по запросу, вам, возможно, потребуется использовать более сложные техники, включая API поисковых систем и анализ результатов поиска.
Armagedone YTУченик (180) 8 месяцев назад
Благодарю
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (258862) 8 месяцев назад
Можно... Тебе не по силам написать веб-сканер. Но , если имеется готовая база адресов, то это проще.
Похожие вопросы