شرح مكتبة BeautifulSoup4 في لغة بايثون - ProgrammerTech
Language:

Search

شرح مكتبة BeautifulSoup4 في لغة بايثون

  • Share this:
شرح مكتبة BeautifulSoup4 في لغة بايثون

مكتبة BeautifulSoup في بايثون

مكتبة ( BeautifulSoup ) هي مكتبة تُمكننا من عمل تحليل للبيانات parsing و البيانات المحددة يكون شكلها مُعقًَّد و غير منظّم مثل html نعمل لها information gathering و نأخذ البيانات عبر مكتبات urllib أو requests او اي مكتبة و نستخدم مكتبة مثل BeautifulSoup لعمل تنظيم للبيانات أو بمعنى اوضح ندخل للرابط نأخذ البيانات او عمل parsing للبيانات المهمة التي تلزمنا بعملنا.

 

تثبيت مكتبة BeautifulSoup

لتثبيت مكتبة bs4 نقوم بفتح التيرمنال أو موجه الأوامر و نقوم بكتابة أمر تحميلها

pip install bs4

معنى bs4 هو اختصار للكلمة BeautifulSoup و الرقم 4 هو الإصدار اي version, عند إنتهاء التثبيت سوف يكتب لنا نجاح العملية كما يلي.

Successfully built bs4, Installing collected packages: bs4, Successfully installed bs4-0.0.1

هذا يؤكد لنا نجاح عملية التثبيت بنجاح, المكتبة كبيرة جداً إذا نريد شرحها كاملة سوف تأخذ وقت كبير جداً, لكن سنتحدث عن أهم النقاط بها فقط و كيفية إستخدامها بعملية parser أو إستخراج للبيانات.

>>>from bs4 import BeautifulSoup
>>>import requests
>>>url = "https://www.google.com/search?q=programmer-tech"
>>>res = requests.get(url)
>>>soup = BeautifulSoup(res.content,'html.parser')
>>>soup.title
<title>programmer-tech - Google'da Ara</title>

في البداية إستدعينا جزء من مكتبة bs4 و هو BeautifulSoup و بعده إستدعينا مكتبة requests ثم وضعنا رابط موقعنا في متغير كما يظهر في متصفح جوجل اي قيمة الـ q ثم إستخدمنا متغير آخر res و عيننا له requests و قلنا له بالذهاب للموقع المحدد في المتغير url هكذا اصبح لدينا بيانات html مخزنة في requests. سنحتاج لإستخدام BeautifulSoup ثم وضعنا متغير soup و قيمته طلب بيانات الـ html عن طريق res.content ثم عملنا parser للداتا و بعده إستعرضنا العنوان title و اعطانا إياه.

إذا كتبنا

>>> soup.title.text
"programmer-tech - Google'da Ara"

نلاحظ أنه أخرج لنا البيانات بدون تاج.

1-112.webp

إذا نُريد طباعة الداتا كاملة نكتب soup.prettify().

>>> soup.prettify()

عند الضغط على Enter سيأخذ وقت و يطبع كامل الداتا.

للتعرف أكثر على هذه المكتبة و كيف عمل إستخراج بيانات لموقع ما أو إسم من الشبكة العنكبوتية سأضع لكم رابط كتاب بسيط صغير يشرحها و يشرح عملها بالتفصيل, لتحميل الكتاب اضغط هنا.


Tags:
Muhammad Alush

Muhammad Alush

إسمي محمد تركي العلوش محب للتقنية و التعلم الذاتي, و جميع خبراتي تعلمتها ذاتياً, و اللغات البرمجية التي أتقنها هي html, css, javascript, php, c, python بالإضافة إلى حبي الكبير لمجال الشبكات.

موقعي programmer-tech.com