如何用Google Sheets的IMPORTXML获取Tankathon球员页的±图标及数量
解决Google Sheets IMPORTXML获取Tankathon球员页面±图标的问题
问题原因
你之前用的XPath //div[@class="strength"] 只能抓取到该类div下的文本内容(如Draft Age、Off. Rating),因为页面上的±图标是通过CSS伪元素(::before)生成的,这类伪元素不属于HTML DOM结构,IMPORTXML无法直接抓取。而图标对应的数量实际存储在元素的data-count属性中。
具体实现方法
获取优势项(+)的数量
在单元格中使用以下公式,获取每个strength项对应的+数量:=IMPORTXML(BF1, "//div[@class='strength']/@data-count")若要直接显示带+号的格式,用数组公式处理:
=ARRAYFORMULA("+"&IMPORTXML(BF1, "//div[@class='strength']/@data-count"))获取劣势项(-)的数量
类似地,抓取weakness项的data-count属性(值为负数),公式如下:=IMPORTXML(BF1, "//div[@class='weakness']/@data-count")若要显示带-号的格式,用绝对值转换:
=ARRAYFORMULA("-"&ABS(IMPORTXML(BF1, "//div[@class='weakness']/@data-count")))
补充说明
页面中每个strength/weakness项的data-count属性直接对应±图标的数量,抓取这个属性就能得到你需要的图标对应的数值,再通过公式格式化即可显示成±符号加数量的形式。
内容的提问来源于stack exchange,提问作者Ma Poub
相关产品推荐
相关产品推荐

