如何从MidwayUSA页面Script标签提取价格并导入Google Sheets?
提取目标价格到Google Sheets的方法
你可以结合INDEX(定位目标Script块)和REGEXEXTRACT(提取价格)来实现,具体分两种场景处理:
1. 已知目标Script的序号
如果你已经确认包含价格的Script块在IMPORTXML返回结果中的位置(比如第25个),直接使用以下公式:
=REGEXEXTRACT(INDEX(IMPORTXML("https://www.midwayusa.com/product/1009418514?pid=418514","//script"), 25), "\d+\.\d{2}")
INDEX(..., 25):从所有Script标签内容中选中对应位置的块(把25替换成你实际找到的序号)REGEXEXTRACT(..., "\d+\.\d{2}"):提取符合「整数+小数点+两位小数」格式的价格数字
2. 不确定目标Script序号
用FILTER筛选包含价格关键词的Script块,再提取价格:
=REGEXEXTRACT(FILTER(IMPORTXML("https://www.midwayusa.com/product/1009418514?pid=418514","//script"), REGEXMATCH(IMPORTXML("https://www.midwayusa.com/product/1009418514?pid=418514","//script"), "price")), "\d+\.\d{2}")
FILTER(..., REGEXMATCH(...,"price")):筛选出包含"price"关键词的Script内容- 后续的
REGEXEXTRACT同样提取标准格式的价格
如果提取出多个数字结果,可在公式外层加INDEX(...,1)取第一个匹配值:
=INDEX(REGEXEXTRACT(FILTER(IMPORTXML("https://www.midwayusa.com/product/1009418514?pid=418514","//script"), REGEXMATCH(IMPORTXML("https://www.midwayusa.com/product/1009418514?pid=418514","//script"), "price")), "\d+\.\d{2}"), 1)
内容的提问来源于stack exchange,提问作者Jacob Schwab
相关产品推荐
相关产品推荐

