Як завантажити HTML на C#

Завантаження HTML є основною операцією для різноманітних веб-завдань, включаючи веб-розробку, вилучення даних, керування вмістом, обробку документів, тестування тощо. Бібліотека Aspose.HTML for .NET надає набір конструкторів HTMLDocument() , які завантажують HTML та ініціалізують об’єкт HTMLDocument для подальших маніпуляцій. Документи HTML можна завантажувати з файлу чи URL-адреси, а також створювати та завантажувати з рядка чи потоку пам’яті. Отже, давайте розглянемо способи завантаження HTML!

По-перше, переконайтеся, що у вашому проекті встановлено Aspose.HTML for .NET . Процес додавання цієї бібліотеки досить простий. Ви можете встановити її через консоль диспетчера пакетів NuGet за допомогою такої команди:


Встановіть Aspose.HTML for .NET

Install-Package Aspose.HTML

Завантажити HTML з файлу

Завантаження HTML із файлу є хорошою відправною точкою для роботи з існуючими файлами HTML, шаблонами або даними, що зберігаються у форматі HTML. Якщо вам потрібно завантажити наявний HTML-файл із файлу, попрацювати над ним і зберегти його, тоді вам допоможе наступний фрагмент коду:

  1. Завантажте HTML-документ із файлу за допомогою конструктора HTMLDocument(address) , який завантажує HTML-документ з адреси (локальний шлях до документа).
  2. Збережіть файл HTML за допомогою методу Save() .

Бібліотека Aspose.HTML for .NET пропонує набір конструкторів, які дозволяють завантажувати HTML-документ із файлу. Наприклад, HTMLDocument(address, configuration) завантажує HTML-документ з адреси з указаними параметрами конфігурації середовища. Додаткову інформацію вы знайдете у Довіднику API HTMLDocument .


Код C# для завантаження HTML із файлу

using System.IO;
using Aspose.Html;
...

    // Prepare a file path
	string documentPath = Path.Combine(DataDir, "sprite.html");

	// Initialize an HTML document from the file
	using (var document = new HTMLDocument(documentPath))
	{
		// Work with the document

		// Save the document to a disk
		document.Save(Path.Combine(OutputDir, "sprite_out.html"));
	}

Завантажте HTML з URL-адреси

Завантаження HTML з URL-адреси може бути корисним, коли вам потрібно отримати інформацію з веб-сторінки. Ви можете завантажити HTML безпосередньо з URL-адреси:

  1. Завантажте HTML-документ із URL за допомогою конструктора HTMLDocument(Url) . Ви можете використовувати HTMLDocument(URL, configuration) , якщо ви хочете завантажити HTML з URL-адреси з указаними параметрами конфігурації середовища.
  2. Використовуйте властивість OuterHTM , щоб отримати повний вміст HTML документа.

Якщо вам потрібно зберегти документ HTML на локальному диску, скористайтеся методом Save() .


Код C# для завантаження HTML з URL-адреси

using System.IO;
using Aspose.Html;
...

	// Load a document from 'https://docs.aspose.com/html/net/creating-a-document/' web page
	using (var document = new HTMLDocument("https://docs.aspose.com/html/net/creating-a-document/"))
	{
		var html = document.DocumentElement.OuterHTML;

		// Write the document content to the output stream
		Console.WriteLine(html);
	}

Завантажити HTML із рядка

Завантаження HTML із рядка є важливою можливістю, яка дозволяє вам керувати вмістом HTML і перетворювати неструктуровані рядки HTML у структурований документ, яким можна керувати, аналізувати або відображати:

  1. Спочатку підготуйте код для документа HTML.
  2. Використовуйте конструктор HTMLDocument(content, baseUri) , щоб ініціалізувати HTML-документ із вмісту рядка з указаним baseUri.
  3. Збережіть файл HTML за допомогою методу Save() .

Код C# для завантаження HTML із рядка

using System.IO;
using Aspose.Html;
...

	// Prepare HTML code
    var html_code = "<p>Learn how to load HTML</p>";

    // Initialize a document from the string variable
    using (var document = new HTMLDocument(html_code, "."))
    {
        // Save the document to a disk
        document.Save(Path.Combine(OutputDir, "load-html-from-string.html"));
    }

Завантажити HTML із потоку пам’яті

Завантаження HTML із потоку корисно для ефективності пам’яті або роботи з даними в пам’яті. Наступний код C# демонструє, як завантажити HTML із MemoryStream і зберегти його у файл за допомогою Aspose.HTML for .NET:

  1. Ініціалізуйте об’єкти MemoryStream і StreamWriter. StreamWriter використовується для запису HTML-коду в MemoryStream.
  2. Запишіть HTML-код у MemoryStream за допомогою методу Write().
  3. Викличте Flush(), щоб переконатися, що всі буферизовані дані записуються в потік, і використовуйте Seek(0, SeekOrigin.Begin), щоб встановити позицію потоку на початок. Це важливо, оскільки HTMLDocument читає вміст із поточної позиції в потоці.
  4. Ініціалізуйте HTMLDocument з MemoryStream за допомогою конструктора HTMLDocument(content, baseUri) . Екземпляр HTMLDocument створюється шляхом передачі об’єкта MemoryStream і baseUri як параметрів.
  5. Збережіть файл HTML на локальному диску за допомогою методу Save() .

Код C# для завантаження HTML із потоку пам’яті

using System.IO;
using Aspose.Html;
...

    // Create a memory stream object
	using (var mem = new MemoryStream())
	using (var sw = new StreamWriter(mem))
	{
		// Write the HTML code into the memory object
		sw.Write("<p>Load HTML from a memory stream</p>");

		// It is important to set the position to the beginning, since HTMLDocument starts the reading exactly from the current position within the stream
		sw.Flush();
		mem.Seek(0, SeekOrigin.Begin);

		// Initialize a document from the string variable
		using (var document = new HTMLDocument(mem, "."))
		{
			// Save the document to a local disk
			document.Save(Path.Combine(OutputDir, "load-html-from-stream.html"));
		}
	}

Щоб дізнатися більше про Aspose.HTML API, відвідайте наш посібник з документацією . У статті Create HTML Document ви знайдете інформацію про те, як завантажити документ із файлу, URL-адреси та потоку або створити його з нуля. Стаття документації Edit HTML Document містить основну інформацію про те, як читати або редагувати об’єктну модель документа за допомогою Aspose.HTML for .NET API. Ви дізнаєтеся, як створювати елементи HTML і як з ними працювати – змінювати документ, вставляючи нові вузли, видаляючи або редагуючи вміст існуючих вузлів.