如何通过IMPORTXML生成XPath获取含指定href的div的data-card-index属性值
Google Sheets IMPORTXML获取指定元素属性的解决方案
之前尝试的错误点
- 第一个公式仅提取所有
<a>标签的href属性,未关联目标<div>的data-card-index属性,完全偏离需求 - 第二个公式的XPath语法错误:
contains()的正确用法是contains(属性名, 匹配值),你错误写成了contains(@href='xxx');且<div>本身不会携带href属性,实际是<div>内部的<a>标签有目标链接
正确公式
使用以下IMPORTXML公式即可得到目标属性值:
=IMPORTXML("https://workspace.google.com/marketplace/search/mail%20merge", "//div[a/@href='./marketplace/app/mailmeteor/1008170693301']/@data-card-index")
公式逻辑解析
//div[a/@href='./marketplace/app/mailmeteor/1008170693301']:定位所有内部包含指定href链接的<a>标签的<div>元素/@data-card-index:提取该<div>元素的data-card-index属性值
特殊情况处理
如果公式返回空值,说明页面内容是通过JavaScript动态渲染的,IMPORTXML无法抓取动态生成的元素,此时需要改用Google Apps Script编写自定义脚本完成抓取。
内容的提问来源于stack exchange,提问作者Jordzzz
相关产品推荐
相关产品推荐

