使用beautifulsoup访问嵌套元素

2024-10-03 15:35:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下html:

<div id="contentDiv">
    <!-- START FILER DIV -->
    <div style="margin: 15px 0 10px 0; padding: 3px; overflow: hidden; background-color: #BCD6F8;">
    <div class="mailer">Mailing Address
        <span class="mailerAddress">500 ORACLE PARKWAY</span>
        <span class="mailerAddress">MAIL STOP 5 OP 7</span>
        <span class="mailerAddress">REDWOOD CITY CA 94065</span>
     </div>

我试图访问“500 ORACLE PARKWAY”和“MAIL STOP 5 OP&;,但找不到方法。我的尝试是:

^{pr2}$

编辑:我忘记了在html中有一些元素使用相似的标记,所以当我只需要前两个标记时,它会捕捉所有这些元素。在

{a1:链接}


Tags: 标记divid元素htmlmailstartclass
2条回答

试试这个:

from bs4 import BeautifulSoup
import requests

res = requests.get("https://www.sec.gov/cgi-bin/browse-edgar?CIK=orcl").text
soup = BeautifulSoup(res,'lxml')
for item in soup.find_all(class_="mailerAddress")[:2]:
    print(item.text)

结果:

^{pr2}$

我将尝试用我们掌握的一点信息来回答这个问题。如果只想在网页上显示某个类的前两个元素,可以使用切片。在

soup.findAll("span", {"class" : "mailerAddress"})[0:2]

相关问题 更多 >