Rumah  >  Soal Jawab  >  teks badan

python - Bagaimana untuk melarikan diri secara automatik '<abc>' apabila menemui aksara melarikan diri html sedemikian di bawah python3?

Saya baru mengenali python Apabila menggunakan perangkak scray, saya menemui watak istimewa html, jadi saya mencari dokumentasi di Baidu:

import HTMLParser
html_parser = HTMLParser.HTMLParser()
s = '&l t;abc&g t;&nbs p;' #Ruang ditinggalkan untuk mengelakkan halaman web terlepas
s = html_parser.unescape(s)

Gesaan masa:
import markupbase
ImportError: Tiada modul bernama 'markupbase'


Dengan bantuan perisian terjemahan, saya menemui kaedah kedua dengan membaca dokumentasi HTMLParser rasmi

daripada html.parser import HTMLParser

kelas MyHTMLParser(HTMLParser):

def handle_data(self, data):
    print(data)
    return data

parser = MyHTMLParser()
s = '&l t;abc&g t;&nbs p;' #Tinggalkan ruang untuk mengelakkan halaman web terlepas
ss=parser.feed(s)

Kaedah kedua berjaya diuji, tetapi masalah yang dihadapi ialah ayat data pulangan tidak sah?


Maafkan saya, adakah terdapat sebarang penyelesaian untuk melarikan diri dengan hanya beberapa baris kod Jika tiada kaedah kedua, bagaimana saya boleh mendapatkan nilai pulangan?

typechotypecho2686 hari yang lalu983

membalas semua(1)saya akan balas

  • 某草草

    某草草2017-06-12 09:29:01

    from html.parser import HTMLParser
    html_parser = HTMLParser()
    s = '<abc>&nbsp;'
    txt = html_parser.unescape(s)
    print(txt)
    # 结果:<abc>

    balas
    0
  • Batalbalas