本文目录导读:

针对“统计角球数哪边领先”的需求,我给你提供几个不同场景的实用脚本,你可以根据数据来源(手动输入、网页抓取、Excel表格)选择最合适的一个。
实时手动输入(最通用,命令行/终端使用)
如果你在观看直播,需要快速记录两队角球,这个Python脚本最简单,输入1或2代表哪队获得角球,脚本实时刷新比分。
# 文件名: corner_counter.py
# 作用: 手动记录并统计主队/客队角球数
team_a = input("请输入主队名称: ") or "主队"
team_b = input("请输入客队名称: ") or "客队"
corner_a, corner_b = 0, 0
print(f"\n⚽ 比赛开始!随时输入指令:")
print(f" [1] = {team_a} 角球")
print(f" [2] = {team_b} 角球")
print(f" [r] = 撤销上一次")
print(f" [q] = 结束并统计\n")
history = [] # 存储操作历史,用于撤销
while True:
# 实时刷新显示(覆盖上一行)
print(f"\r{team_a} {corner_a} : {corner_b} {team_b} ", end="", flush=True)
cmd = input(" > ").strip().lower()
if cmd == '1':
corner_a += 1
history.append(('a', corner_a))
print(f"\n✅ {team_a} 角球+1!当前 {corner_a} : {corner_b}")
elif cmd == '2':
corner_b += 1
history.append(('b', corner_b))
print(f"\n✅ {team_b} 角球+1!当前 {corner_a} : {corner_b}")
elif cmd == 'r':
if history:
team_scored, _ = history.pop()
if team_scored == 'a':
corner_a -= 1
else:
corner_b -= 1
print(f"\n↩️ 已撤销!当前 {corner_a} : {corner_b}")
else:
print("\n⚠️ 没有可撤销的记录")
elif cmd == 'q':
print(f"\n\n🔔 比赛结束统计:")
print(f"{'='*30}")
if corner_a > corner_b:
print(f"🏆 {team_a} 领先! ({corner_a} - {corner_b})")
elif corner_b > corner_a:
print(f"🏆 {team_b} 领先! ({corner_b} - {corner_a})")
else:
print(f"🤝 双方战平! ({corner_a} - {corner_b})")
break
else:
print("\n❌ 无效输入,请输入 1, 2, r 或 q")
使用方法:将代码保存为 .py 文件,在终端运行 python corner_counter.py。
自动化数据抓取(网页实时数据)
如果你是想自动从某数据网站(如雷速、懂球帝等)获取角球数据,这个脚本能处理网页动态加载。注意:需先安装 selenium 和 pandas。
# 文件名: auto_corner.py
# 作用: 从网页自动解析角球数据(需根据实际网站结构调整选择器)
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
def get_corner_data(url):
# 初始化浏览器驱动(需提前配置chromedriver路径)
driver = webdriver.Chrome()
driver.get(url)
time.sleep(5) # 等待动态数据加载
try:
# 假设HTML结构中角球数据在 class="corner" 的元素里
home_corner = driver.find_element(By.CSS_SELECTOR, ".home .corner").text
away_corner = driver.find_element(By.CSS_SELECTOR, ".away .corner").text
home_team = driver.find_element(By.CSS_SELECTOR, ".home .name").text
away_team = driver.find_element(By.CSS_SELECTOR, ".away .name").text
print(f"当前比分: {home_team} {home_corner} - {away_corner} {away_team}")
if int(home_corner) > int(away_corner):
print(f"🏆 {home_team}领先")
else:
print(f"🏆 {away_team}领先")
driver.quit()
return home_corner, away_corner
except Exception as e:
print(f"抓取失败: {e}, 请检查class名或元素是否存在")
driver.quit()
return None
# 使用示例(替换为真实数据链接)
get_corner_data("https://example.com/live-match")
Excel表格批量处理(比赛复盘使用)
如果你有多个比赛的数据存于Excel中,想快速筛选出“角球领先”的场次,这个脚本最合适。依赖:openpyxl。
# 文件名: excel_corner.py
# 作用: 读取Excel中的角球列,统计每场比赛哪边领先
import openpyxl
def analyze_excel(file_path):
wb = openpyxl.load_workbook(file_path)
ws = wb.active # 或用 wb["Sheet1"]
# 假设A列=主队角球, B列=客队角球, 第一行是表头
home_column, away_column = 1, 2
print("比赛角球统计结果:")
print("-" * 40)
for row in range(2, ws.max_row + 1):
home_val = ws.cell(row, home_column).value
away_val = ws.cell(row, away_column).value
if home_val is None or away_val is None:
continue
home, away = int(home_val), int(away_val)
if home > away:
result = f"第{row}行: 主队领先 ( {home} : {away} )"
elif away > home:
result = f"第{row}行: 客队领先 ( {home} : {away} )"
else:
result = f"第{row}行: 平局 ( {home} : {away} )"
print(result)
wb.close()
# 使用示例(文件需与脚本在同一目录)
analyze_excel("角球数据.xlsx")
总结建议
| 需求 | 推荐脚本 |
|---|---|
| 看直播手动记录 | 场景一 |
| 抓取在线实时数据 | 场景二 |
| 整理赛后统计数据 | 场景三 |
如果只是临时用一次且不太懂代码,可以直接复制场景一的代码,粘贴到任意Python在线运行器中即可使用,有具体数据源的话,可以再告诉我,我帮你改抓取代码。