You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Beautiful Soup提取指定HTML中的特定链接

提取HTML中特定球队链接的两种实用方法

嘿,要从这段HTML里提取那两个球队的链接其实挺简单的,我给你分享两种靠谱的方法,你可以根据自己的场景选择:

方法1:用Python的BeautifulSoup(推荐首选)

这是处理HTML解析最稳妥的方式,能轻松应对标签嵌套、格式变动等情况,完全不用担心正则容易踩的坑。代码示例如下:

from bs4 import BeautifulSoup

# 你的目标HTML内容
html_content = '''<div class="RadAjaxPanel" id="LiveBoard1_LiveBoard1_litGamesPanel"> <br /><b><a href="winss.aspx?team=White Sox&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018">White Sox</a></b> @ <b><a href="winss.aspx?team=Athletics&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018">Athletics</a></b>...'''

# 初始化HTML解析器
soup = BeautifulSoup(html_content, 'html.parser')

# 精准定位<b>标签下的<a>元素
team_links = soup.select('b > a')

# 遍历提取链接和球队名称
for link in team_links:
    team_name = link.get_text(strip=True)  # 自动去除文本前后的多余空格
    team_url = link['href']
    print(f"球队: {team_name}, 链接: {team_url}")

运行后你会得到清晰的结果:

  • 球队: White Sox, 链接: winss.aspx?team=White Sox&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018
  • 球队: Athletics, 链接: winss.aspx?team=Athletics&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018

方法2:用正则表达式(快速临时方案)

如果只是临时快速提取,正则表达式也能搞定,但要注意一旦HTML结构发生变化(比如标签嵌套调整),正则可能直接失效。代码示例:

import re

html_content = '''<div class="RadAjaxPanel" id="LiveBoard1_LiveBoard1_litGamesPanel"> <br /><b><a href="winss.aspx?team=White Sox&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018">White Sox</a></b> @ <b><a href="winss.aspx?team=Athletics&pos=all&stats=bat&qual=0&type=8&season=2018&month=0&season1=2018">Athletics</a></b>...'''

# 匹配<a>标签中的href属性和球队名称
pattern = r'<b><a href="([^"]+)">([^<]+)</a></b>'
matches = re.findall(pattern, html_content)

# 输出提取结果
for url, team in matches:
    print(f"球队: {team}, 链接: {url}")

这个正则通过([^"]+)捕获href的完整内容,([^<]+)捕获球队名称,运行后也能得到和上面一致的结果。

内容的提问来源于stack exchange,提问作者Nate Walker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:53:13