Satu kaedah carian DOM biasa ialah
. Kaedah ini menambah senarai elemen ke tag, memelihara pesanan asalnya. Walau bagaimanapun, hanya memanjangkan dengan extend()
mungkin mengakibatkan unsur -unsur ditambah sebagai rentetan dan bukannya tag HTML yang betul. extend()
import requests from bs4 import BeautifulSoup req = requests.get('https://en.wikipedia.org/wiki/Python_(programming_language)') soup = BeautifulSoup(req.text, "lxml") new_soup = BeautifulSoup("<ol></ol>", "lxml") new_soup.ol.extend(['
. Sebaliknya, kaedah wrap()
membuang tag semasa mengekalkan kandungan mereka. Mari kita gambarkan dengan contoh mengeluarkan tag berani dan italik: unwrap()
soup = BeautifulSoup("<p>We will <i>try</i> to get rid of <b>tags</b> that make text <b>bold</b> or <i>italic</i>. The content <i>within</i> the <b>tags</b> should still be <b>preserved</b>.</p>", "lxml") for unwanted_tag in soup.find_all(["b", "i"]): unwanted_tag.unwrap() print(soup.p.contents) soup.p.smooth() print(soup.p.contents)
membuang tag yang tidak diingini. Perhatikan bahawa selepas mengeluarkan tag, serpihan teks disimpan sebagai unwrap()
. Kaedah NavigableStrings
menggabungkan rentetan ini ke dalam satu rentetan, memudahkan output. smooth()
Kesimpulan
tutorial ini menyediakan asas untuk mengikis web dengan sup yang indah. Anda telah belajar bagaimana untuk menghuraikan laman web, mengekstrak data, mengubahsuai struktur HTML, dan menyimpan hasilnya secara tempatan. Ini memberi kuasa kepada anda untuk memproses dan memanipulasi kandungan web dengan berkesan untuk pelbagai aplikasi.Atas ialah kandungan terperinci Mengikis halaman web dalam python dengan sup yang indah: carian dan pengubahsuaian dom. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!