Google Sheets抓取KHL全部69页球员数据的公式建议
抓取KHL全69页球员统计数据的Google Sheets方案
方法一:批量生成分页URL+IMPORTHTML
假设你的基础分页URL格式为xxx?page=X(A1单元格为第一页URL),用以下公式批量抓取所有69页数据:
=ARRAYFORMULA(QUERY({ IMPORTHTML(SUBSTITUTE(A1,"page=1","page="&SEQUENCE(69)),"table",1) },"select * where Col1 is not null"))
SEQUENCE(69)生成1到69的连续页码SUBSTITUTE替换URL中的页码参数,批量生成69个分页链接ARRAYFORMULA驱动函数批量执行抓取QUERY过滤空行,统一整理结果
方法二:IMPORTXML抓取分页链接再批量获取数据
- 先抓取所有分页URL(需根据KHL页面结构调整XPath,示例XPath匹配含
page=的分页链接):
=ARRAYFORMULA(UNIQUE(IMPORTXML(A1,"//a[contains(@href,'page=')]/@href")))
将结果存入B1:B69范围后,用以下公式批量抓取表格:
=ARRAYFORMULA(QUERY({ IMPORTXML(B1:B69,"//table[1]") },"select * where Col1 is not null"))
注意事项
- 需确认KHL网站的分页URL规则,确保
SUBSTITUTE或XPath能精准匹配分页链接 - Google Sheets对IMPORT类函数有调用频次限制,批量抓取可能需分批次执行
- 若不同页面表格结构存在差异,需调整
QUERY的筛选逻辑适配
内容的提问来源于stack exchange,提问作者TheGunner4
相关产品推荐
相关产品推荐

