Uji Ekspresi XPath Secara Online

Gunakan XPath Tester untuk menemukan node pada halaman web publik dengan ekspresi XPath. Masukkan URL dan ekspresi seperti //img, //main//a, atau //*[@data-id]. Alat ini menampilkan node yang cocok dan membuat kode C# untuk kueri yang sama.

  1. Masukkan URL halaman web yang ingin Anda periksa.
  2. Masukkan ekspresi XPath yang mengidentifikasi node yang diperlukan.
  3. Klik Find, periksa hasil yang cocok, lalu salin hasil atau kode C# yang dibuat.


Mengevaluasi Kueri XPath pada HTML di C#

Aspose.HTML for .NET mengevaluasi ekspresi XPath terhadap DOM dokumen. Contoh ini memuat URL yang ditampilkan dalam widget, memanggil Evaluate() , lalu memproses IXPathResult yang dikembalikan. Saat URL atau ekspresi dalam widget diubah, contoh C# yang dirender di server ini diperbarui secara otomatis. Node konteks menentukan titik awal evaluasi, sedangkan XPathResultType menentukan jenis hasil yang diminta.

Kueri XPath di C#

using System;
using Aspose.Html;
using Aspose.Html.Dom;
using Aspose.Html.Dom.XPath;

// Create an HTML document
string url = "https://www.aspose.com/";
using HTMLDocument document = new HTMLDocument(url);

// Evaluate the XPath expression
IXPathResult result = document.Evaluate("//a", document, null, XPathResultType.Any, null);

// Process the XPath result
switch (result.ResultType)
{
    case XPathResultType.Number:
        Console.WriteLine(result.NumberValue);
        break;
    case XPathResultType.String:
        Console.WriteLine(result.StringValue);
        break;
    case XPathResultType.Boolean:
        Console.WriteLine(result.BooleanValue);
        break;
    default:
        Node node;
        while ((node = result.IterateNext()) != null)
        {
            if (node is Element element)
            {
                Console.WriteLine(element.OuterHTML);
            }
            else
            {
                Console.WriteLine(node.TextContent);
            }
        }
        break;
}

Pola Kueri XPath yang Umum

XPath dapat memilih elemen berdasarkan nama, atribut, posisi, hierarki, atau konten teks:

  • //img memilih setiap elemen <img> dalam dokumen.
  • //main//a memilih tautan pada tingkat apa pun di dalam <main>.
  • //*[@data-id] memilih elemen yang memiliki atribut data-id.
  • //ul/li[1] memilih turunan <li> pertama dari setiap elemen <ul>.
  • //p[contains(normalize-space(.), 'price')] memilih paragraf yang teks ternormalisasinya berisi price.

Untuk kueri class, ID, atribut, atau elemen yang ringkas dan tidak memerlukan kondisi teks atau sumbu XPath, CSS Selector Tester biasanya lebih mudah dibaca.


Menggunakan API XPath di C#

  1. Buat HTMLDocument dari file HTML lokal atau URL.
  2. Tentukan ekspresi XPath dan pilih node konteks yang sesuai.
  3. Panggil Evaluate() dengan ekspresi, konteks, pemecah namespace jika diperlukan, dan XPathResultType yang diharapkan.
  4. Baca nilai yang dikembalikan atau iterasikan node yang cocok dengan IterateNext() .

Jika ekspresi menggunakan awalan namespace, sediakan pemecah yang memetakan awalan tersebut ke URI namespace. Untuk kueri HTML biasa tanpa awalan, pemecah dapat bernilai null.


Dokumentasi XPath dan Referensi API

Gunakan sumber daya berikut untuk mempelajari evaluasi XPath, navigasi HTML, dan contoh khusus XML:


Instal Aspose.HTML for .NET

Instal Aspose.HTML for .NET dari NuGet menggunakan .NET CLI:

dotnet add package Aspose.HTML

Anda juga dapat menggunakan antarmuka NuGet Package Manager atau menjalankan Install-Package Aspose.HTML di Package Manager Console. Lihat panduan instalasi untuk detail penyiapan, atau minta lisensi sementara untuk mengevaluasi API tanpa batasan evaluasi.


FAQ

1. Apa itu ekspresi XPath?

Ekspresi XPath adalah kueri yang memilih node atau menghitung nilai dari pohon dokumen HTML atau XML. Ekspresi ini dapat menggunakan jalur, sumbu, predikat, dan fungsi untuk menjelaskan hasil yang diperlukan.

2. Dapatkah XPath digunakan untuk mengueri HTML dan XML?

Ya. XPath bekerja pada pohon DOM dan dapat memilih node dalam dokumen HTML atau XML. Alat penguji online ditujukan untuk halaman web HTML publik; gunakan alur kerja XML C# yang didokumentasikan jika diperlukan penanganan namespace atau pemuatan khusus XML.

3. Mengapa ekspresi XPath tidak mengembalikan node?

Periksa nama node, predikat, node konteks, dan struktur dokumen yang dimuat. Untuk XML atau konten dengan namespace, sediakan juga pemecah namespace yang memetakan setiap awalan dalam ekspresi.

4. Kapan sebaiknya saya menggunakan XPath alih-alih selektor CSS?

Gunakan XPath jika kueri harus mencocokkan teks, menelusuri elemen induk atau saudara, atau menerapkan predikat yang sulit dinyatakan dalam CSS. Gunakan selektor CSS untuk kueri class, ID, atribut, dan turunan yang umum.

Alur Kerja Terkait untuk Pemilihan dan Pengeditan HTML

Lanjutkan dengan selektor CSS, pengeditan DOM, ekstraksi tabel, atau ekstraksi gambar di C#.