如何从网页中提取这些元素?
我有一个用HTML做的网页,里面有这些元素:
<div class="content_page">
<a href="/earth" class="nametessera" >earth</a>
</div>
<div class="content_page">
<a href="/world" class="nametessera" >world</a>
</div>
<div class="content_page">
<a href="/planet" class="nametessera">planet</a>
</div>
...
我需要获取 /earth、/world、/planet 等链接。
所以我想要提取所有带有“nametessera”这个类的A标签的链接。
我该怎么用Python来做到这一点呢?
2 个回答
3
你可以用 Beautiful Soup 来解析HTML。
相关的说明文档可以在 这里 找到。
3
简短回答:
使用beautifulSoup来解析网页,提取出网址,然后用urlib2或者pycurl来下载这些网址的内容。
[编辑:]
在下面的例子基础上,添加只使用包含在div中的href链接
>>> alldiv = soup.findAll('div', { "class" : "content_page" })
>>> for div in alldiv: print div.a
...
<a href="/earth" class="nametessera">earth</a>
<a href="/world" class="nametessera">world</a>
<a href="/planet" class="nametessera">planet</a>
>>> for div in alldiv: print div.a['href']
...
/earth
/world
/plan
同样,你也可以这样做
allHref = soup.findAll('a', { "class" : "nametessera" })