我正在测试一个程序,我试图从每个HTML标记中提取所有文本。它似乎有效,直到我覆盖for i in a:
if 'default' in i['tags']:
output = i['hostname']
函数。
我收到错误:
__init__
该计划在这里:
File "./html.py", line 9, in __init__
TransParser.__init__(self)
File "./html.py", line 9, in __init__
TransParser.__init__(self)
File "./html.py", line 9, in __init__
TransParser.__init__(self)
File "./html.py", line 9, in __init__
TransParser.__init__(self)
RuntimeError: maximum recursion depth exceeded
答案 0 :(得分:2)
class TransParser(HTMLParser):
def __init__(self):
TransParser.__init__(self)
# ^^^ You are calling the same constructor recursively.
<强>修正强>:
class TransParser(HTMLParser):
def __init__(self):
HTMLParser.__init__(self)
..
..
答案 1 :(得分:2)
class TransParser(HTMLParser):
def __init__(self):
TransParser.__init__(self)
self.trans_data = self.rawdata
你想在这做什么? init 方法调用自身;这是无限递归。你的意思是打电话给父母的 init 方法吗?那将是
super().__init__(self)