-1
我真的处理HTML页面的HTML标签内容终于结束了这样的台词:如何提取使用Python的HTMLParser
<td class="border">AAA</td><td class="border">BBB</td>
我需要AAA和BBB提取到wwith HTMLParser的变量,我想不出如何做到这一点。 我不能使用任何其他解析器,导致我在python工具中受限。 任何帮助,将不胜感激。
我真的处理HTML页面的HTML标签内容终于结束了这样的台词:如何提取使用Python的HTMLParser
<td class="border">AAA</td><td class="border">BBB</td>
我需要AAA和BBB提取到wwith HTMLParser的变量,我想不出如何做到这一点。 我不能使用任何其他解析器,导致我在python工具中受限。 任何帮助,将不胜感激。
这将TD标签内打印数据:
from HTMLParser import HTMLParser
inTD = False
# create a subclass and override the handler methods
class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
global inTD
if tag.upper() == "TD":
inTD = True
def handle_endtag(self, tag):
global inTD
if tag.upper() == "TD":
inTD = False
def handle_data(self, data):
global inTD
if inTD:
print data
的答案非常感谢,这个例子更是比比皆是。虽然,我不觉得它很简单。我对这样一个事实感到困惑,为了做最简单的事情,对于这个模块应该用于什么目的,我需要创建子类并用某些东西重写某些东西。我希望有一个更简单的方法来做到这一点,或者我只是用正则表达式来解析。 –
做你想做的,但a)除了保存项目,这是你想要的,b)它已经写好,c)它只有大约20行代码。而且你知道HTML通常不能被正则表达式正确解析,对吧? (这就是为什么像HTMLParser这样的东西存在的原因。) –
“用某物重写某些东西”是什么意思? –