如何使用Beautifulsoup提取唯一H1内无class的span文本并去除括号
实现步骤与代码示例
你可以通过定位唯一h1标签、提取内部span文本、清理首尾括号三步完成需求,代码可直接运行:
from bs4 import BeautifulSoup # 待解析的HTML内容 html_content = '<h1>Anno <span>(2021)</span></h1>' # 初始化解析器 soup = BeautifulSoup(html_content, 'html.parser') # 定位唯一h1标签下的span节点 span_node = soup.find('h1').find('span') # 提取文本并清理首尾括号 clean_text = span_node.get_text().strip('()') print(clean_text) # 输出结果:2021
说明
- 因为h1标签全局唯一,直接用
find('h1')即可精准定位,不需要额外的属性筛选 strip('()')只会清理字符串首尾的圆括号,不会影响文本中间的括号内容,比切片[1:-1]的兼容性更强,如果span文本首尾存在多余空格,也可以改成strip('() ')同时清理空格和括号。
内容的提问来源于stack exchange,提问作者Linux
相关产品推荐
相关产品推荐

