【发布时间】:2017-05-15 08:44:04
【问题描述】:
我正在开发一个 python 脚本来从特定站点抓取数据。 我正在使用 Beautiful Soap 作为 python 模块。 HTML 页面中有趣的数据都在这个结构中:
<tbody aria-live="polite" aria-relevant="all">
<tr style="">
<td>
<a href="www.server.com/art/crag">Name<a>
</td>
<td class="nowrap"></td>
<td class="hidden-xs"></td>
</tr>
</tbody>
在标签 tbody 中还有更多的 tr 标签,我想对每个标签 td 的第一个标签 a 进行处理
我试过这样:
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
a = soup.find(id='tabella_falist')
b = a.find("tbody")
link = [p.attrs['href'] for p in b.select("a")]
但是通过这种方式,脚本会将所有 href 放入所有 td 标记中。怎么可能只取第一?
谢谢
【问题讨论】:
-
你期望什么输出?我不确定你要提取什么
-
标签: python web-scraping beautifulsoup