Rumah > Artikel > pembangunan bahagian belakang > Pengaturcaraan Pelayan Python: Penghuraian HTML dengan BeautifulSoup
Pengaturcaraan pelayan Python ialah salah satu arahan utama dalam pembangunan web, yang melibatkan banyak tugas, termasuk penghuraian HTML. Dalam Python, kami mempunyai banyak perpustakaan berkuasa untuk memproses fail HTML, yang paling popular ialah BeautifulSoup.
Artikel ini akan memperkenalkan cara menggunakan Python dan BeautifulSoup untuk mengekstrak data daripada fail HTML. Kami akan meneruskan langkah-langkah berikut:
Seterusnya kami akan menerangkan langkah-langkah ini satu persatu.
Kita boleh menggunakan arahan pip untuk memasang BeautifulSoup, cuma masukkan arahan berikut pada baris arahan:
pip install beautifulsoup4
Sebelum menggunakan BeautifulSoup, kita perlu memuatkan fail HTML ke dalam Python. Kami boleh menggunakan fungsi open() terbina dalam Python untuk membuka fail dan membacanya ke dalam memori menggunakan kaedah read():
with open("example.html") as fp: soup = BeautifulSoup(fp)
Dalam kod di atas, kami menggunakan kata kunci dengan untuk membuka example.html fail . Kelebihan ini ialah fail boleh ditutup secara automatik dan masalah sumber fail tidak dikeluarkan kerana penamatan program yang tidak normal dapat dielakkan.
Seterusnya, kita perlu menghuraikan fail HTML menjadi objek BeautifulSoup. Kami boleh menggunakan kod berikut untuk mencipta objek BeautifulSoup:
soup = BeautifulSoup(html_doc, 'html.parser')
Dalam kod di atas, kami menggunakan parameter 'html.parser' untuk memberitahu BeautifulSoup menggunakan parser HTML terbina dalam untuk menghuraikan fail HTML.
Setelah kami mencipta objek BeautifulSoup, kami boleh menghuraikannya. Kita boleh menggunakan kod berikut untuk mencetak keseluruhan fail HTML:
print(soup.prettify())
Dalam contoh ini, menggunakan kaedah prettify() boleh menjadikan output lebih mudah dibaca. Menjalankan kod di atas akan mendapat output keseluruhan fail HTML.
Seterusnya mari kita lihat cara mengekstrak data. Kami boleh menggunakan kod sampel berikut untuk mengekstrak semua hiperpautan:
for link in soup.find_all('a'): print(link.get('href'))
Dalam kod di atas, kami menggunakan kaedah find_all() untuk mencari semua elemen "a", dan menggunakan kaedah get() untuk mengekstraknya href atribut.
Kami juga boleh menggunakan kaedah yang serupa dengan pemilih CSS untuk mengekstrak elemen. Sebagai contoh, kita boleh menggunakan kod sampel berikut untuk mengekstrak semua elemen p:
for paragraph in soup.select('p'): print(paragraph.text)
Dalam kod di atas, kami telah menggunakan kaedah pilih() dan menggunakan "p" sebagai pemilih.
Dalam aplikasi sebenar, kami mungkin perlu melakukan penghuraian fail HTML yang lebih kompleks mengikut keperluan kami sendiri. Tetapi tidak kira apa kandungan yang perlu kita huraikan, menggunakan BeautifulSoup boleh memudahkan proses.
Ringkasan
Artikel ini memperkenalkan cara menggunakan Python dan BeautifulSoup untuk menghuraikan HTML dan mengekstrak data. Kami belajar cara memasang BeautifulSoup, memuatkan fail HTML, mencipta objek BeautifulSoup, menghuraikan fail HTML dan mengekstrak data. Walaupun artikel ini hanyalah pengenalan pengenalan kepada BeautifulSoup, dengan mempelajari artikel ini, kita seharusnya mempunyai pemahaman yang lebih baik tentang menggunakan BeautifulSoup untuk penghuraian HTML dan pengekstrakan data.
Atas ialah kandungan terperinci Pengaturcaraan Pelayan Python: Penghuraian HTML dengan BeautifulSoup. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!