Pemilih BeautifulSoup: pilih elemen HTML yang mengandungi berbilang perkataan
P粉878510551
P粉878510551 2023-08-13 19:25:41
0
1
498
<p>Adakah terdapat cara untuk saya menggunakan BeautifulSoup untuk mendapatkan teks label yang mengandungi berbilang perkataan? </p> <p>Sebagai contoh, jika saya mempunyai HTML berikut: </p> <pre class="brush:php;toolbar:false;"><div> <div> <a>selamat datang</a> <a>hi</a> </div> <a>apa kabar</a> <a>stackoverflow</a> </div></pre> <p>...saya cuma nak dapatkan<code>hello, apa kabar</code></p>
P粉878510551
P粉878510551

membalas semua(1)
P粉824889650

Anda pasti boleh menggunakan BeautifulSoup untuk mengekstrak teks daripada tag HTML yang mengandungi berbilang perkataan. Dalam contoh anda, anda ingin mengekstrak teks daripada teg <a> Inilah cara untuk mencapai ini menggunakan BeautifulSoup dalam Python.

from bs4 import BeautifulSoup

html = '''
<div>
    <div>
        <a>hello there</a>
        <a>hi</a>
    </div>
    <a>what's up</a>
    <a>stackoverflow</a>
</div>
'''

soup = BeautifulSoup(html, 'html.parser')

target_tags = soup.find_all('a')  # 找到所有的<a>标签
multi_word_texts = []

for tag in target_tags:
    if ' ' in tag.get_text():  # 检查标签文本是否包含空格(表示多个单词)
        multi_word_texts.append(tag.get_text())

result = ' '.join(multi_word_texts)
print(result)
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan