Melucutkan HTML daripada Strings dalam Python
Apabila berinteraksi dengan kandungan HTML, selalunya menjadi perlu untuk memisahkan teks yang bermakna daripada teg markup untuk pemprosesan atau analisis selanjutnya. Begini cara untuk mencapai ini dengan cekap dalam Python.
Untuk menanggalkan tag HTML daripada rentetan, gunakan HTMLParser daripada perpustakaan standard Python. Penghurai ini menyediakan cara yang mudah untuk menghuraikan dokumen HTML dan mengekstrak kandungan yang dikehendaki sahaja.
Untuk Python 3, gunakan kod berikut:
from io import StringIO from html.parser import HTMLParser class TagStripper(HTMLParser): def __init__(self): super().__init__() self.reset() self.strict = False self.convert_charrefs = True self.text = StringIO() def handle_data(self, data): self.text.write(data) def get_data(self): return self.text.getvalue() def strip_html(html): stripper = TagStripper() stripper.feed(html) return stripper.get_data()
Untuk Python 2, gunakan kod berikut:
from HTMLParser import HTMLParser from StringIO import StringIO class TagStripper(HTMLParser): def __init__(self): self.reset() self.text = StringIO() def handle_data(self, data): self.text.write(data) def get_data(self): return self.text.getvalue() def strip_html(html): stripper = TagStripper() stripper.feed(html) return stripper.get_data()
Sekarang, mari kita gambarkan penggunaannya:
html = "<p>Hello, <em>world</em>!</p>" stripped_text = strip_html(html) print(stripped_text) # Output: Hello, world!
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melucutkan Tag HTML dengan Cekap daripada Strings dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!