"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكن لـ Jsoup أن تجعل عملية تجريف الويب في Java سهلة وفعالة؟

كيف يمكن لـ Jsoup أن تجعل عملية تجريف الويب في Java سهلة وفعالة؟

تم النشر بتاريخ 2024-11-06
تصفح:634

How Can Jsoup Make Web Scraping in Java Easy and Efficient?

تحليل HTML لتخريب الويب في جافا

في مجال تطوير البرمجيات، يصبح من الضروري استخراج معلومات قيمة من مواقع الويب لأغراض مختلفة . تُعرف عملية استخراج البيانات من المصادر عبر الإنترنت عادةً باسم تجريف الويب. يمتلك مبرمجو Java أداة متعددة الاستخدامات تحت تصرفهم لهذه المهمة: محللو HTML.

أحد محللي HTML الموصى بهم بشدة لـ Java هو Jsoup. إنه يتفوق بفضل محددات CSS سهلة الاستخدام التي تشبه jQuery وفئة Elements المرنة، والتي تتيح التكرار بسهولة.

البدء مع Jsoup لـ Web Scraping

دعونا تعمق في مثال مباشر لتوضيح تجريف الويب باستخدام Jsoup:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

public class Test {

    public static void main(String[] args) throws Exception {
        String url = "https://stackoverflow.com/questions/2835505";
        Document document = Jsoup.connect(url).get();

        String question = document.select("#question .post-text").text();
        System.out.println("Question: "   question);

        Elements answerers = document.select("#answers .user-details a");
        for (Element answerer : answerers) {
            System.out.println("Answerer: "   answerer.text());
        }
    }

}

في هذا المثال، نقوم بالاتصال بسؤال Stack Overflow محدد، ونحلل محتوى HTML، ونستخرج نص السؤال بالإضافة إلى أسماء المجيبين.

تخصيص تجريف الويب

يسمح تعبير Jsoup بمجموعة واسعة من سيناريوهات تجريف الويب. من خلال الاستفادة من محددات CSS، يمكنك استهداف عناصر أو سمات محددة على صفحة ويب. على سبيل المثال، إذا كنت تريد استرداد عنوان صفحة منتج وسعرها ووصفها على Best Buy، فيمكنك استخدام محددات CSS التالية:


أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3