ويب سكرابينغ مع BeautifulSoup: دليل شامل للمبتدئين

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

ويب سكرابينغ مع BeautifulSoup: دليل شامل

الإنترنت الحديث هو محيط هائل من البيانات. الأخبار، المراجعات، أسعار العملات، توقعات الطقس، معلومات المنتجات – كل هذا متاح على الشبكة. ويب سكرابينغ يتيح لك أتمتة عملية استخراج هذه البيانات.

في بايثون، واحدة من أشهر الأدوات لويب سكرابينغ هي مكتبة BeautifulSoup. في هذا الدليل، سنشرح بالتفصيل ما هو ويب سكرابينغ، وكيفية تنفيذه باستخدام BeautifulSoup، وسنقدم أمثلة عملية.

ما هو ويب سكرابينغ؟

ويب سكرابينغ هو طريقة آلية لاستخراج البيانات من مواقع الويب. بدلاً من نسخ المعلومات يدويًا، تستخدم سكريبت يقوم بهذه المهمة نيابة عنك.

مزايا ويب سكرابينغ:

  • أتمتة جمع البيانات: توفير الوقت والموارد من خلال أتمتة المهام الروتينية.
  • حداثة المعلومات: إمكانية الحصول على أحدث البيانات بسرعة.
  • تنظيم البيانات: تحويل البيانات غير المنظمة من الويب إلى تنسيق مناسب للتحليل.

مجالات استخدام ويب سكرابينغ:

  • مراقبة الأسعار في المتاجر الإلكترونية: تتبع تغييرات أسعار المنافسين.
  • جمع الأخبار والمعلومات عن الأحداث: الحصول التلقائي على النشرات الإخبارية.
  • تحليل الوظائف الشاغرة: جمع معلومات عن الوظائف المتاحة من مواقع مختلفة.
  • تحليل البيانات وتعلم الآلة: استخراج البيانات لبناء النماذج والتنبؤات.
  • مقارنة المنتجات والخدمات: جمع بيانات عن المواصفات والأسعار لتسهيل الاختيار.

هام جدًا: عند استخدام ويب سكرابينغ، التزم دائمًا بقواعد الموقع (تحقق من ملف robots.txt) والمعايير القانونية. لا تسيء استخدام موارد الموقع واحترم سياسة استخدام البيانات الخاصة به.

ما هي مكتبة BeautifulSoup؟

BeautifulSoup هي مكتبة بايثون لتحليل مستندات HTML و XML. تتيح لك التنقل بسهولة في بنية صفحة HTML، والعثور على العناصر المطلوبة واستخراجها.

الميزات الرئيسية لـ BeautifulSoup:

  • سهولة الاستخدام: واجهة بديهية وسهلة الفهم.
  • المرونة: دعم محللات مختلفة (html.parser, lxml, html5lib).
  • تحمل الأخطاء: معالجة كود HTML غير الصحيح.

تثبيت BeautifulSoup:

pip install beautifulsoup4
pip install requests

مكتبة requests ضرورية للحصول على كود HTML للصفحة.

الخطوات الأساسية لويب سكرابينغ باستخدام BeautifulSoup

  1. الحصول على كود HTML للصفحة: استخدم مكتبة requests لتحميل محتوى صفحة الويب.
  2. تحليل HTML باستخدام BeautifulSoup: قم بتحويل كود HTML إلى كائن BeautifulSoup لتسهيل التنقل والبحث عن العناصر.
  3. استخراج البيانات المطلوبة: استخدم دوال BeautifulSoup للبحث عن البيانات المطلوبة واستخراجها بناءً على الوسوم والخصائص ومحددات CSS.
  4. حفظ البيانات أو معالجتها: احفظ البيانات المستخرجة بتنسيق مناسب (CSV, JSON, قاعدة بيانات) أو قم بمعالجتها حسب الحاجة.

أمثلة عملية لويب سكرابينغ

مثال بسيط: جمع عناوين الأخبار

هذا المثال يوضح كيفية استخراج عناوين الأخبار من موقع ويب.

import requests
from bs4 import BeautifulSoup

url = "https://news.ycombinator.com/"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
titles = soup.find_all("a", class_="storylink")

for idx, title in enumerate(titles, 1):
    print(f"{idx}. {title.text}")

شرح الكود:

  • requests.get(url): يحصل على محتوى HTML للصفحة من الرابط المحدد.

المدونات

توصيات الكتب