如何使用Python获取<br>标签前后的字符串

Jon*_*nas 0 html python

我有一个数据爬虫 (BeautifulSoup) 正在运行,它返回分配给变量的以下字符串priceLast

<td>
200,90<br/>
196,90                          </td>
Run Code Online (Sandbox Code Playgroud)
<td>
20,90<br/>
16,90                           </td>
Run Code Online (Sandbox Code Playgroud)
<td>
2,90<br/>
1,90                            </td>
Run Code Online (Sandbox Code Playgroud)

空格不时变化,因此我想将字符分配<td>XXXX<br/>给 varprice1和之后的字符,<br/>直到第一个空格给 var price2

我试图.split找到一个解决方案

priceLast.split("<br/>")
Run Code Online (Sandbox Code Playgroud)

但这会抛出:

TypeError: 'NoneType' object is not callable
Run Code Online (Sandbox Code Playgroud)

dre*_*c4s 5

您可以从td标签中获取文本,并在新行处拆分:

from bs4 import BeautifulSoup

h = """
<td>
200,90<br/>
196,90                          </td>
"""

soup = BeautifulSoup(h, "html.parser")
prices = soup.find("td").text.strip().split("\n")
print(prices[0], prices[1])
#200,90 196,90
Run Code Online (Sandbox Code Playgroud)