【发布时间】:2014-12-09 08:57:28
【问题描述】:
我正在尝试从 html 文件中解析一组特定的链接,但由于我使用的是 HTMLParser,我无法访问层次结构树中的 html 信息,因此无法提取信息。
我的 HTML 如下:
<p class="mediatitle">
<a class="bullet medialink" href="link/to/a/file">Some Content
</a>
</p>
所以我需要提取所有其键为“href”且前一个属性为 class="bullet medialink" 的值。换句话说,我只想要存在于“bullet medialink”类的标签中的thode hrefs
到目前为止我尝试的是
from HTMLParser import HTMLParser
import urllib
# create a subclass and override the handler methods
class MyHTMLParser(HTMLParser):
def handle_starttag(self, tag, attrs):
if(tag == 'a'):
for (key,value) in attrs:
if(value == 'bullet medialink'):
print "attr:", key
p = MyHTMLParser()
f = urllib.urlopen("sample.html")
html = f.read()
p.feed(html)
p.close()
【问题讨论】: