和我之前的问题有点关系。我正在制作一个简单的html解析器,以便在Python2.7中使用。我想有多种解析类型,即可以解析链接、脚本标记、图像等。我使用的是HTMLParser模块,所以我最初的想法是为我要解析的每一个东西创建一个单独的类。但这似乎相当愚蠢。有没有一种方法可以在不创建多个类的情况下完成这项工作?我对C比较熟悉,所以我想我只需要在init方法上传递一个参数来指定要解析的内容,就像在.Net中那样,但是我似乎做得不正确。它不起作用,只是看起来不太对劲。下面是当前的工作代码:我如何修改它,使之只拥有一个类,并且传递的参数指示要解析的HTML标记的类型?在
class LinksParser(HTMLParser):
def __init__(self, url):
HTMLParser.__init__(self)
req = urllib2.urlopen(url)
self.feed(req.read())
def handle_starttag(self, tag, attrs):
if tag !='a': return
for name, value in attrs:
print("Found Link --> [{0}]{1}".format(name, value))
像这样:
用以下内容实例化类:
^{pr2}$相关问题 更多 >
编程相关推荐