如何用beautifulsou和python获取span标记中的文本

2024-06-28 20:33:30 发布

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

我正在使用beautifulsoup和html5lib来尝试获取QTY:之后的数字,我尝试了许多不成功的方法。你知道吗

这是范围标记格式:

  <span id="ctl00_cph1_grdRfqSearch_ctl45_lblPr">0080970139<br>QTY: 255</span>

这是生成span标记的代码:

  PreQty = container1.find(id="ctl00_cph1_grdRfqSearch_ctl03_lblPr")                            

我尝试过添加.text、.get\u text()和其他内容,但都不起作用

如何获得QTY:之后的值?你知道吗

我只需要下一步将文本从span标记中取出

     <span id="ctl00_cph1_grdRfqSearch_ctl45_lblPr">0080970139<br>QTY: 255</span>

Tags: 方法text标记brid数字qtyspan
2条回答

.select()returns a list of matching elements。因此,如果选择器匹配任何元素,则首先需要从数组中检索元素,然后可以访问它的.text属性。你知道吗

为了演示,您可以做如下操作:

for element in PreQty:
    print(element.text)

你可以试试这个,这里比较棘手的部分是在<br>标记后面找到“QTY”。你知道吗

from bs4 import BeautifulSoup

text = """<span id="ctl00_cph1_grdRfqSearch_ctl45_lblPr">0080970139<br>QTY: 255</span>"""
soup = BeautifulSoup(text,'html.parser')
QTY = soup.find("span", id = "ctl00_cph1_grdRfqSearch_ctl45_lblPr" ).find('br').next_sibling
print(QTY)

#outputs 
QTY: 255

相关问题 更多 >