استخراج بيانات الويب باستخدام BeautifulSoup
افهم كيفية استخراج البيانات من مواقع الويب باستخدام Python
استخراج بيانات الويب باستخدام BeautifulSoup درس مجاني في Python Academy على CoddyKit. هذا هو الدرس 5 من أصل 5. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Python Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Python Academy 5 دروس في المجموع.
مقدمة إلى كشط الويب
مقدمة إلى كشط الويب
كشط الويب هو عملية استخراج البيانات من مواقع الويب. وتسهّل مكتبة BeautifulSoup في Python تحليل مستندات HTML أو XML والتنقل خلالها.
في هذا الدرس، ستتعلّم كيفية استخدام BeautifulSoup لكشط الويب.

تثبيت BeautifulSoup
تثبيت BeautifulSoup
لتثبيت BeautifulSoup ومكتبة requests المطلوبة، استخدم الأوامر التالية:
pip install beautifulsoup4pip install requests
بعد التثبيت، يمكنك استيرادهما في نصوص Python البرمجية:
# Importing BeautifulSoup
from bs4 import BeautifulSoup
import requests
print("BeautifulSoup imported successfully")جلب صفحة ويب
جلب صفحة ويب
يمكنك جلب صفحة ويب باستخدام مكتبة requests:
# Fetching a web page
response = requests.get("https://example.com")
print(response.text) # Outputs the HTML contentتحليل HTML باستخدام BeautifulSoup
تحليل HTML باستخدام BeautifulSoup
توفر BeautifulSoup أساليب لتحليل مستندات HTML والتنقل خلالها:
# Parsing HTML
html_content = "<html><body><h1>Hello, World!</h1></body></html>"
soup = BeautifulSoup(html_content, "html.parser")
print(soup.h1.text) # Outputs: Hello, World!العثور على العناصر
العثور على العناصر
توفر BeautifulSoup أساليب مثل find() وfind_all() للعثور على العناصر:
# Finding elements
soup = BeautifulSoup("<html><body><p class='content'>Hello!</p><p>World!</p></body></html>", "html.parser")
element = soup.find("p", class_="content")
print(element.text) # Outputs: Hello!استخراج الروابط
استخراج الروابط
يمكنك استخراج جميع الروابط (وسوم <a>) من صفحة ويب:
# Extracting links
html = "<html><body><a href='https://example.com'>Example</a></body></html>"
soup = BeautifulSoup(html, "html.parser")
links = soup.find_all("a")
for link in links:
print(link['href']) # Outputs: https://example.comاستخراج الجداول
استخراج الجداول
تسهّل BeautifulSoup استخراج البيانات من جداول HTML:
# Extracting table data
html = "<table><tr><td>Row 1</td></tr><tr><td>Row 2</td></tr></table>"
soup = BeautifulSoup(html, "html.parser")
rows = soup.find_all("tr")
for row in rows:
print(row.text) # Outputs: Row 1, Row 2التعامل مع العناصر المفقودة
التعامل مع العناصر المفقودة
توفر BeautifulSoup أساليب للتعامل بأمان مع العناصر المفقودة:
# Handling missing elements
soup = BeautifulSoup("<html><body></body></html>", "html.parser")
element = soup.find("p")
print(element) # Outputs: Noneالأخطاء الشائعة في BeautifulSoup
الأخطاء الشائعة في BeautifulSoup
إليك بعض الأخطاء التي ينبغي تجنبها:
- عدم استخدام محلل HTML مناسب، مثل
html.parserأوlxml. - جلب المحتوى من مواقع الويب المحجوبة أو المحمية من دون استخدام الرؤوس المناسبة.
- كشط البيانات بشكل متكرر جدًا، مما قد يؤدي إلى حظر عنوان IP الخاص بك.
ما الذي تعلمناه؟
ما الذي تعلمناه؟
في هذا الدرس، تعلمت:
- كيفية تثبيت BeautifulSoup وrequests واستيرادهما.
- كيفية جلب محتوى HTML وتحليله والتنقل خلاله.
- كيفية استخراج عناصر محددة، مثل الروابط والجداول.
- كيفية التعامل بأمان مع العناصر المفقودة.
أحسنت! لننتقل إلى الموضوع التالي.

الأسئلة الشائعة
هل درس «استخراج بيانات الويب باستخدام BeautifulSoup» مجاني؟
نعم — نص درس «استخراج بيانات الويب باستخدام BeautifulSoup» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Python Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Python Academy 5 دروس في المجموع.
ماذا ستتعلم في «استخراج بيانات الويب باستخدام BeautifulSoup»؟
افهم كيفية استخراج البيانات من مواقع الويب باستخدام Python تتمرن على Python Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Python Academy؟
لا تُشترط خبرة سابقة. Python Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 5 من أصل 5.
كم من الوقت يستغرق درس «استخراج بيانات الويب باستخدام BeautifulSoup»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Python Academy هذا؟
نعم. كل درس في Python Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تحليل البيانات باستخدام Pandas
- تصوير البيانات باستخدام Matplotlib
- NumPy للحسابات العددية
- التعامل مع APIs باستخدام requests
- استخراج بيانات الويب باستخدام BeautifulSoup