python3模块对象不可调用
这是一个叫做 crawl.py 的文件。我正在尝试把它转换成 Python 3 的版本。我省略了所有不必要的细节。
出现的错误是:
Traceback (most recent call last):
File "crawl.py", line 44, in parseAndGetLinks
self.parser = html.parser(AbstractFormatter(DumbWriter(StringIO())))
TypeError: 'module' object is not callable
import html.parser
from formatter import DumbWriter, AbstractFormatter
from io import StringIO
parser = html.parser(AbstractFormatter(DumbWriter(StringIO())))
1 个回答
5
html.parser
是一个模块;你需要的是这个模块里的 HTMLParser
类:
parser = html.parser.HTMLParser(AbstractFormatter(DumbWriter(StringIO())))
或者更简洁地说:
from html.parser import HTMLParser
parser = HTMLParser(AbstractFormatter(DumbWriter(StringIO())))