使用lxml';HTML页面上的目标解析器方法 我主要是C++程序员,但我想在Python中做一些网络搜索,并计划编写一个脚本,使用“代码> LXML< /Cord>”来确定网页上使用最多的词。为了尽可能高效地执行此操作,我不希望实际构建元素树,而是解析整个页面并将每个单词插入哈希表

使用lxml';HTML页面上的目标解析器方法 我主要是C++程序员,但我想在Python中做一些网络搜索,并计划编写一个脚本,使用“代码> LXML< /Cord>”来确定网页上使用最多的词。为了尽可能高效地执行此操作,我不希望实际构建元素树,而是解析整个页面并将每个单词插入哈希表,python,web-scraping,lxml,Python,Web Scraping,Lxml,然而,在尝试跳过构建树时,我遇到了几个错误。现在我的安慰是 'lxml.etree.HTMLParser' object is not iterable. 这是我的代码(从lxmlintroduction页面复制了大部分代码): 我是否遗漏了什么,或者是否有更好的方法来满足我的需求?提前谢谢 什么错误?请将其添加到问题中。对此表示抱歉-我当前看到一个“lxml.etree.HTMLParser”对象不可编辑错误。我已经把这个问题加上去了!始终添加完整的错误消息(回溯)。还有其他有用的信息,比如

然而,在尝试跳过构建树时,我遇到了几个错误。现在我的安慰是

'lxml.etree.HTMLParser' object is not iterable.
这是我的代码(从
lxml
introduction页面复制了大部分代码):


我是否遗漏了什么,或者是否有更好的方法来满足我的需求?提前谢谢

什么错误?请将其添加到问题中。对此表示抱歉-我当前看到一个“lxml.etree.HTMLParser”对象不可编辑错误。我已经把这个问题加上去了!始终添加完整的错误消息(回溯)。还有其他有用的信息,比如说,这会造成问题。它有助于在不运行代码的情况下找到解决方案:)或创建小的工作示例,每个人都可以复制粘贴并运行,然后查看问题。什么错误?请将其添加到问题中。对此表示抱歉-我当前看到一个“lxml.etree.HTMLParser”对象不可编辑错误。我已经把这个问题加上去了!始终添加完整的错误消息(回溯)。还有其他有用的信息,比如说,这会造成问题。它有助于在不运行代码的情况下找到解决方案:),或者创建一个小的工作示例,每个人都可以复制粘贴并运行,然后查看问题。
# classes
class ParserTarget: 
    events = []
    close_count = 0
    def start(self, tag, attrib): 
        self.events.append(("start", tag, attrib))
    def end(self): 
        events, self.events = self.events, []
        self.close_count += 1
        return events

website = "https://en.wikipedia.org/wiki/Miles_Mosley"
opened = urlopen(website)

parserTarget = ParserTarget()
parser = etree.HTMLParser(target=parserTarget)
events = etree.iterparse(opened, parser, html=True, recover=True)
print(parser_target.close_count)