使用soup.find_all()后,输出为[<a class="end" href="/WaterQuality/RealTimeWQ/index/page/47.html">47</a>],但我只想要<><>之间的那个数字,该怎么办
时间: 2024-05-14 09:18:59 浏览: 43
Beautiful Soup 4.4.0 文档
你可以使用正则表达式提取出<>之间的数字。可以使用re模块中的findall函数来实现。示例代码如下:
```python
import re
html = '<a class="end" href="/WaterQuality/RealTimeWQ/index/page/47.html">47</a>'
num = re.findall(r'<.*?>(.*)</.*?>', html)[0]
print(num)
```
输出结果为:
```
47
```
这里的正则表达式`<.*?>(.*)</.*?>`表示匹配以`<`开头、以`>`结尾的任意字符,然后匹配任意字符0次或多次,直到遇到`</`,再匹配任意字符0次或多次,直到遇到`>`。括号里的部分表示需要提取出来的内容。`re.findall()`函数会返回一个列表,我们只需要取第一个元素即可。
阅读全文