مكتبة سويفت مجانية لتحليل واستخراج وتعديل بيانات HTML
مكتبة سويفت مفتوحة المصدر لتحليل واستخراج وتعديل بيانات HTML باستخدام URL أو ملف أو سلسلة، بالإضافة إلى استخدام أفضل أساليب DOM وCSS وjQuery المشابهة.
في عالم تطوير الويب، التعامل مع مستندات HTML هو مهمة شائعة، لكنه قد يكون صعبًا في كثير من الأحيان بسبب الطبيعة غير المنظمة للـ HTML. لحسن الحظ، يأتي SwiftSoup، مكتبة Swift القوية، لإنقاذنا من خلال توفير طريقة بسيطة وبديهية لتحليل ومعالجة مستندات HTML. هناك العديد من الميزات الأساسية والمتقدمة المهمة في المكتبة، مثل استخراج وتحليل HTML من عنوان URL أو ملف أو سلسلة، البحث واستخراج البيانات، تعديل عناصر HTML، تنظيف المحتوى المقدم من المستخدم وفقًا لقائمة بيضاء آمنة، والعديد غير ذلك.
SwiftSoup هي مكتبة مفتوحة المصدر قوية صُممت خصيصًا لتحليل ومعالجة مستندات HTML في تطبيقات Swift. توفر المكتبة آلية سلسة للتنقل عبر عقد مستند HTML ومعالجة محتواها. تقدم مجموعة عملية من الأساليب التي تمكّن مطوري البرمجيات من التنقل عبر شجرة HTML، استخراج البيانات، تعديل العناصر، وأكثر من ذلك. سواء كنت تقوم بجمع محتوى الويب، بناء زواحف ويب، أو استخراج معلومات محددة من HTML، فإن المكتبة تمكّنك من تحقيق أهدافك بسهولة.
تظهر مكتبة SwiftSoup كرفيق قيم لأي مطور Swift يتعامل مع مستندات HTML. صيغتها البسيطة ووظائفها القوية تُبسّط مهام تحليل ومعالجة HTML. من استخراج البيانات إلى تعديل العناصر، تتفوق المكتبة في تبسيط العملية وتمكين مطوري البرمجيات من العمل بكفاءة مع HTML في تطبيقاتهم المكتوبة بـ Swift. لذا، في المرة القادمة التي تجد نفسك تتعامل فيها مع مستندات HTML، يجب أن تكون SwiftSoup بلا شك مكتبتك المفضلة!
البدء باستخدام SwiftSoup
الطريقة الموصى بها والأسهل لتثبيت SwiftSoup هي استخدام CocoaPods. يرجى استخدام الأمر التالي لتثبيت سلس.
تثبيت SwiftSoup عبر CocoaPods
pod 'SwiftSoup'يمكنك أيضًا تثبيته يدويًا؛ قم بتنزيل أحدث ملفات الإصدار مباشرةً من مستودع GitHub.
تحليل HTML داخل تطبيقات Swift
تحليل HTML هو جوهر استخراج البيانات من الويب، ويُبسّط SwiftSoup هذه العملية. تتضمن مكتبة SwiftSoup المفتوحة المصدر ميزات مفيدة جدًا لتحميل وتحليل مستندات HTML داخل تطبيقات Swift. باستخدام بضع أسطر من الشيفرة فقط، يمكن للمطورين الحصول على محتوى HTML لصفحة ويب والبدء في استخراج البيانات ذات المعنى. تتيح المكتبة للمطورين اختيار العناصر باستخدام محددات CSS، مما يجعل من السهل تحديد نقاط البيانات المحددة داخل بنية HTML. يُظهر المثال التالي كيفية تحليل مستند HTML عبر أوامر Swift.
كيف تحلل مستند HTML داخل تطبيقات Swift؟
do {
let html = "First parse "
+ "تم تحليل HTML إلى مستند.
"
let doc: Document = try SwiftSoup.parse(html)
return try doc.text()
} catch Exception.Error(let type, let message) {
print(message)
} catch {
print("error")
}
استخراج السمات وHTML من العناصر باستخدام Swift
تُسهل مكتبة SwiftSoup المفتوحة المصدر للمبرمجين استخراج السمات والبيانات من عناصر HTML داخل تطبيقات Swift الخاصة بهم. على سبيل المثال، يمكن للمطورين استرجاع النص والسمات ومحتوى HTML من العناصر ببضع أسطر من الشيفرة فقط. هناك طرق مختلفة مُقدمة يمكن أن تساعد المستخدمين في الحصول على قيمة سمة، أو نص عنصر، أو HTML. المثال التالي يُظهر كيف يمكن للمستخدمين الحصول على بيانات عناصر مختلفة باستخدام شفرة Swift.
كيف تحصل على بيانات العناصر المختلفة عبر واجهة برمجة تطبيقات Swift؟
do {
let html: String = "رابط مثال.
"
let doc: Document = try SwiftSoup.parse(html)
let link: Element = try doc.select("a").first()!
let text: String = try doc.body()!.text() // "An example link."
let linkHref: String = try link.attr("href") // "http://example.com/"
let linkText: String = try link.text() // "example"
let linkOuterH: String = try link.outerHtml() // "example"
let linkInnerH: String = try link.html() // "example"
} catch Exception.Error(let type, let message) {
print(message)
} catch {
print("error")
}
التنقل وتعديل ملف HTML
تسمح مكتبة SwiftSoup المفتوحة المصدر للمطورين بتحميل ومعالجة عناصر مستندات HTML داخل تطبيقات Swift. توفر المكتبة آلية سلسة للتنقل عبر عقد مستند HTML ومعالجة محتواها. سواء كنت تريد استخراج البيانات، تعديل العناصر، أو إزالة العقد تمامًا، فإن الـ API تمكّنك من إنجاز هذه المهام بكفاءة. المثال التالي يُظهر كيف يمكن للمطورين الوصول إلى عناصر مستندات HTML وتعديلها باستخدام أوامر Swift.
كيف تصل إلى عنصر وتعدله في مستندات HTML عبر واجهة برمجة تطبيقات Swift؟
import SwiftSoup
do {
let html = "- العنصر 1
- العنصر 2
"
let doc = try SwiftSoup.parse(html)
let items = try doc.select("li")
for item in items {
print(try item.text()) // Output: Item 1, Item 2
}
} catch {
print("Error parsing HTML: \(error)")
}