python3 ImportError: No module named ‘HTMLParser’

Posted in :

python 2.x 的 HTMLParser 在 python 3.x 用法不一樣。

python2 的 code 直接 run 會有error:

ImportError: No module named 'HTMLParser'

如果使用 pip3 install HTMLParser 會有下面的新 error:

No module named 'htmlentitydefs'

No module named 'markupbase'

Python 3,需要使用下面的 import 而不是使用 pip3 上的版本:

import html.parser

python 3 HTMLParser 教學:

https://docs.python.org/3/library/html.parser.html

 

from html.parser import HTMLParser

class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
print("Encountered a start tag:", tag)

def handle_endtag(self, tag):
print("Encountered an end tag :", tag)

def handle_data(self, data):
print("Encountered some data :", data)

parser = MyHTMLParser()
parser.feed('<html><head><title>Test</title></head>'
'<body><h1>Parse me!</h1></body></html>')

 

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *