Cara menghuraikan dokumen HTML menggunakan Python dan BeautifulSoup adalah seperti berikut: muatkan dokumen HTML dan buat objek BeautifulSoup. Gunakan objek BeautifulSoup untuk mencari dan memproses elemen teg, seperti: Cari teg khusus: soup.find(tag_name) Cari semua teg khusus: soup.find_all(tag_name) Cari teg dengan atribut khusus: soup.find(tag_name, {'attribute ': 'value'}) mengekstrak kandungan teks atau nilai atribut label. Laraskan kod seperti yang diperlukan untuk mendapatkan maklumat tertentu.
Matlamat:
Ketahui cara menghuraikan dokumen HTML menggunakan Python dan perpustakaan BeautifulSoup.
Pengetahuan penting:
Kod:
from bs4 import BeautifulSoup # 加载 HTML 文档 html_doc = """ <html> <head> <title>HTML 文档</title> </head> <body> <h1>标题</h1> <p>段落</p> </body> </html> """ # 创建 BeautifulSoup 对象 soup = BeautifulSoup(html_doc, 'html.parser') # 获取标题标签 title_tag = soup.find('title') print(title_tag.text) # 输出:HTML 文档 # 获取所有段落标签 paragraph_tags = soup.find_all('p') for paragraph in paragraph_tags: print(paragraph.text) # 输出:段落 # 获取特定属性的值 link_tag = soup.find('link', {'rel': 'stylesheet'}) print(link_tag['href']) # 输出:样式表链接
kes penggunaan yang mudah untuk digunakan secara spesifik maklumat daripada laman web reptilia. Contohnya, anda boleh menggunakan kod berikut untuk mengekstrak soalan dan jawapan daripada Stack Overflow: Atas ialah kandungan terperinci . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!import requests
from bs4 import BeautifulSoup
url = 'https://stackoverflow.com/questions/31207139/using-beautifulsoup-to-extract-specific-attribute'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
questions = soup.find_all('div', {'class': 'question-summary'})
for question in questions:
question_title = question.find('a', {'class': 'question-hyperlink'}).text
question_body = question.find('div', {'class': 'question-snippet'}).text
print(f'问题标题:{question_title}')
print(f'问题内容:{question_body}')
print('---')