【发布时间】:2021-01-27 13:09:42
【问题描述】:
我有以下html文件来遍历Python的beautifulsoup:
<table align=center border='1' cellpadding="8"><tr><td><b>1940 (Spanish) Jan</b>
<a href="./1940sp/jan/2/home.htm" target="_parent">2</a> 
<a href="./1940sp/jan/4/home.htm" target="_parent">4</a> 
<td><b>1940 (English) Jan</b>
<a href="./1940/jan/2/home.htm" target="_parent">2</a> 
<a href="./1940/jan/4/home.htm" target="_parent">4</a> 
<tr><td><b>1940 (Spanish) Feb</b>
<a href="./1940sp/feb/1/home.htm" target="_parent">1</a> 
...OMITTED...
<td><b>1940 (English) Indices</b>
<a href="./1940/ndx1/home.htm" target="_parent">Jan to Mar</a> 
</table>
这个 html 有些有关闭的 td 标签,有些没有,但我想这没关系。我想要得到的是 href 的文本和相应的粗体文本,如下所示:
1940 (Spanish) Jan|2
1940 (Spanish) Jan|4
1940 (English) Jan|2
1940 (English) Jan|4
...
1940 (English) Indices|Jan to Mar
我实际上可以用我的代码迭代粗体 tds,我想弄清楚的是迭代 a hrefs 文本的部分。我现在的python代码如下:
import requests
url = "http://nlpdl.nlp.gov.ph/OG01/1902"
page = requests.get(url)
from bs4 import BeautifulSoup
soup = BeautifulSoup(page.content, 'html.parser')
elements = soup.find("td").find_all_next("b")
for el in elements:
print (el)
提前致谢!
【问题讨论】:
-
谢谢苏希尔!抱歉,我编辑了我的问题,因为解决方案似乎将 td/b 与 a hrefs 交替使用。
标签: python beautifulsoup html-parsing