Python:提取 div 内的 href
我正在尝试用Python写一个简单的下载工具,但我对这个语言还不太熟悉。这个脚本的功能是查找特定div id里面的链接(href),只要有链接,就调用一个叫getfile()的函数。以下是示例的HTML源代码 -
<div class="tab-pane fade in active" id="home">
<p><i class="icon-film icon-white"> <a target="_blank" href="/accounting?id=265">Video</a></i></p>
<p><i class="icon-file icon-white"> <a target="_blank" href="/downloadpdf?id=265&type=pdf"> PDF Slides</a></i></p>
<p><i class="icon-download icon-white"> <a target="_blank" href="/downloadpdf?id=265&type=file">Additional Files</a></i></p>
</div>
我打算使用beautifulsoup这个模块来解析和提取链接。目前我只有这样的代码 -
f = urllib2.urlopen(url)
s = f.read()
soup = bs4.BeautifulSoup(s)
for a in soup.select('div.home'):
print a.attrs.get('href')
现在运行这段代码会打印出None
1 个回答
1
在类名为 tab-pane fade in active
的元素中找到所有的 href
链接:
soup = BeautifulSoup(st)
for a in soup.findAll('div', {"class":"tab-pane fade in active"}):
for b in a.findAll('a'):
print b.get('href')
输出结果
/accounting?id=265
/downloadpdf?id=265&type=pdf
/downloadpdf?id=265&type=file