يمكن استخدام XPath للعثور على عقد معينة تطابق بعض المعايير المحددة في تعبير XPath. يمكنك استخدام استعلام XPath للتنقل عبر مستند XML أو HTML. وفقًا لذلك ، توضح هذه المقالة كيفية استخدام XPath لتحديد عقد معينة وفقًا لمتطلباتك.
- العمل مع XPath لتحديد العقد من ملفات XML أو HTML - تثبيت C# API
- استخدم طريقة XPath Document.Evaluate() للحصول على صور من صفحة ويب HTML في C#
- استخدم طريقة XPath Document.Evaluate() لتحديد العقد من ملف XML في C#
- استخدم مستند XPath.Evaluate() الأسلوب لاختيار معلومات محددة من العقد المحددة في C#
العمل مع XPath لتحديد العقد من ملفات XML أو HTML - تثبيت C# API
Aspose.HTML for .NET يمكن استخدام API لأتمتة العملية لتحديد نوع معين من العقد ، أو قراءة معلومات محددة من عقدة محددة. يمكنك تكوين API بسرعة عن طريق تنزيل ملف DLL من صفحة الإصدارات الجديدة أو باستخدام أمر التثبيت NuGet التالي:
PM> Install-Package Aspose.Html
استخدم طريقة XPath Document.Evaluate() للحصول على صور من صفحة ويب HTML في C#
يمكنك استخدام طريقة Document.Evaluate() للحصول على صور من صفحة ويب بتنسيق HTML. يرجى اتباع الخطوات أدناه لإكمال هذه العملية:
- تهيئة كائن من فئة HTMLDocument لتحميل الملف المصدر.
- قم بتمرير تعبير XPath والمعلمات الأخرى إلى أسلوب التقييم.
- كرر من خلال العقد المحددة واحصل على رابط لكل صورة.
يوضح نموذج التعليمات البرمجية التالي كيفية استخدام طريقة XPath Document.Evaluate() للحصول على صور من صفحة ويب HTML:
// قم بإنشاء مثيل لمستند HTML
using (var doc = new Aspose.Html.HTMLDocument(Path.Combine(dataDir, "xpath.htm")))
{
// قم بتقييم تعبير XPath
var result = doc.Evaluate("//main/div[position() mod 2 = 1]//img[@class = 'photo']", doc, doc.CreateNSResolver(doc), Aspose.Html.Dom.XPath.XPathResultType.Any, null);
// كرر العقد الناتجة واطبعها على وحدة التحكم
Aspose.Html.Dom.Node node;
while ((node = result.IterateNext()) != null)
{
var img = (Aspose.Html.HTMLImageElement)node;
Console.WriteLine(img.Src);
}
}
استخدم طريقة XPath Document.Evaluate() لتحديد العقد من ملف XML في C#
في بعض الحالات ، قد تحتاج إلى تحديد عقد معينة من ملف XML. توضح الخطوات التالية كيفية تلبية هذه المتطلبات:
- قم بتحميل ملف XML المصدر بفئة HTMLDocument.
- قم باستدعاء الأسلوب Evaluate أثناء تمرير تعبير XPath والمعلمات الأخرى.
- كرر على العقد المحددة واطبع المحتوى الكامل للعقد المحددة.
يوضح مقتطف الشفرة أدناه كيفية استخدام طريقة XPath Document.Evaluate لتحديد العقد من ملف XML:
// قم بإنشاء مثيل للمستند
using (var doc = new Aspose.Html.HTMLDocument(Path.Combine(dataDir, "cars.xml")))
{
// قم بتقييم تعبير XPath
var dealers = doc.Evaluate("//Dealer[descendant::Car[descendant::Model > 2005 and descendant::Price < 25000]]", doc, doc.CreateNSResolver(doc), XPathResultType.Any, null);
Aspose.Html.Dom.Node dealer;
// كرر العقد الناتجة واطبع محتوياتها على وحدة التحكم
while ((dealer = dealers.IterateNext()) != null)
{
Console.WriteLine(dealer.TextContent);
}
}
استخدم مستند XPath.Evaluate() الأسلوب لاختيار معلومات محددة من العقد المحددة في C#
قد تحتاج أحيانًا إلى الحصول على تفاصيل معينة من العقدة بدلاً من المحتويات الكاملة. يمكنك اتباع الخطوات أدناه لاستخدام استعلام XPath للحصول على معلومات محددة من العقد المحددة.
- قم بالوصول إلى ملف XML للإدخال باستخدام فئة HTMLDocument.
- قم باستدعاء الأسلوب Evaluate للحصول على العقد المطابقة لتعبير XPath.
- مرر عبر العقد المطابقة واطبع المحتوى المحدد من كل عقدة.
يوضح نموذج التعليمات البرمجية التالي كيفية اختيار معلومات محددة من عقدة محددة في XML باستخدام أسلوب XPath Document.Evaluate:
// قم بإنشاء مثيل للمستند
using (var doc = new Aspose.Html.HTMLDocument(Path.Combine(dataDir, "cars.xml")))
{
// حدد التجار الذين يطابقون تعبير XPath
var dealers = doc.Evaluate("//Dealer[descendant::Car[descendant::Model > 2005 and descendant::Price < 25000]]", doc, doc.CreateNSResolver(doc), XPathResultType.Any, null);
Aspose.Html.Dom.Node dealer;
// كرر مع التجار المختارين
while ((dealer = dealers.IterateNext()) != null)
{
// احصل على وطباعة اسم التاجر والهاتف
var dealerInfo = doc.Evaluate("concat('Dealer name: ', Name, ' Telephone: ', Telephone)", dealer, doc.CreateNSResolver(doc), XPathResultType.String, null);
Console.WriteLine(dealerInfo.StringValue);
// حدد وطباعة CarID الذي يتطابق مع تعبير XPath
var carIds = doc.Evaluate(".//Car[descendant::Model > 2005 and descendant::Price < 25000]/@CarID", dealer, doc.CreateNSResolver(doc), XPathResultType.Any, null);
Aspose.Html.Dom.Node carId;
while ((carId = carIds.IterateNext()) != null)
{
Console.WriteLine("Car id: " + carId.TextContent);
}
}
}
استخدم XPath لتحديد العقد في C# - اقرأ المزيد
يمكنك التعرف على مزيد من التفاصيل حول العمل مع XPath Query من خلال زيارة الموضوعات التالية في قسم التوثيق.
استعلام XPath لتحديد العقد من HTML أو XML في C# - رخصة تقييم مجانية
يمكنك اختبار ميزات واجهة برمجة التطبيقات بكامل طاقتها ، دون أي قيود عن طريق طلب ترخيص مجاني مؤقت.
استنتاج
في هذه المقالة ، تعلمت كيفية استخدام أسلوب XPath Query Document.Evaluate لتحديد عقد معينة أو محتويات معينة للعقد المحددة التي تطابق تعبير XPath. وحيث أنه في حالة رغبتك في مناقشة أي من مخاوفك ، يرجى التواصل معنا على منتدى الدعم المجاني.