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.
- Masukkan URL halaman web yang ingin Anda periksa.
- Masukkan ekspresi XPath yang mengidentifikasi node yang diperlukan.
- 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:
//imgmemilih setiap elemen<img>dalam dokumen.//main//amemilih tautan pada tingkat apa pun di dalam<main>.//*[@data-id]memilih elemen yang memiliki atributdata-id.//ul/li[1]memilih turunan<li>pertama dari setiap elemen<ul>.//p[contains(normalize-space(.), 'price')]memilih paragraf yang teks ternormalisasinya berisiprice.
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#
- Buat
HTMLDocumentdari file HTML lokal atau URL. - Tentukan ekspresi XPath dan pilih node konteks yang sesuai.
- Panggil
Evaluate()dengan ekspresi, konteks, pemecah namespace jika diperlukan, danXPathResultTypeyang diharapkan. - 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:
- How to Use XPath in HTML
menjelaskan parameter
Evaluate()dan menunjukkan cara memilih node di C#. - HTML Navigation in C# membandingkan XPath, selektor CSS, dan penelusuran DOM langsung.
- Select XML Nodes with XPath membahas kueri XPath terhadap dokumen 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#.