اذهب إلى المحتوى
  • 0

كيفية الحصول على الأصناف Classes الموجودة في صفحة ما بإستخدام Beautifull soup في بايثون؟

Mohssen A Mohssen

السؤال

عندما أحاول بسحب بعض البيانات من صفحة معينة ويصبح لدي كود HTML بالكامل، أحتاج إلى إستخراج كل الأصناف Classes الموجودة في كل العناصر، هنا  مثال لكود HTML بسيط:

<body>
  <div class="class-1">
      <div class="class-2">some content</div>
      <div class="class-3">some content</div>
      <div class="class-4">some content</div>
  </div>
  <div class="class-1">
      <div class="class-2">another content</div>
      <div class="class-3">another content</div>
      <div class="class-4">another content</div>
  </div>
</body>

كيف يمكنني الحصول على قائمة بكل الصناف الموجودة في الصفحة بإستخدام Beautifull soup في بايثون؟ لتصبح النتيجة بالشكل التالي:

['class-1', 'class-2', 'class-3', 'class--4']

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

يمكنك تنفيذ ذلك بالشكل التالي :

classes = []
for element in soup.find_all(class_=True):
    classes.extend(element["class"])

أو :

classes = [value
           for element in soup.find_all(class_=True)
           for value in element["class"]]

مثال تطبيقي :


from bs4 import BeautifulSoup

data = """
<div class="class1">
<span class="class2">some text</span>
<span class="class3">some text</span>
<span class="class4">some text</span>
</div>
"""

soup = BeautifulSoup(data, "html.parser")

classes = [value
           for element in soup.find_all(class_=True)
           for value in element["class"]]

print(classes)

# Returns
# ['class1', 'class2', 'class3', 'class4']

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...