我有一个谷歌表格,其中行是产品,列是有关这些产品的信息(材料、颜色、价格等)。
使用相应的xpath查询,这些信息是通过IMPORTXML函数检索的。在下面的示例中,列D是此产品的URL。这些函数为第3行的产品检索信息(玻璃、颜色和类型)。
针对每个产品,都要检索大约10列数据,因此同一个URL需要使用10个不同的IMPORTXML函数。
当产品数量较少时,它可以正常工作,但是当产品数量太多时,只能检索到部分信息,其他单元格会显示"Loading..."。
唯一的解决方法是手动复制/粘贴检索到的值(Ctrl+C,Ctrl+Maj+v),然后其他单元格就会解除冻结并开始导入值。最终,我需要为所有单元格执行此操作,这需要很长时间。
1. 为什么有些单元格会一直显示"Loading..."?Google有没有设置限制?
2. 我应该调整我的函数以优化这个过程,并尽可能减少IMPORTXML函数的数量吗?
3. 除了我的耗时解决方法外,你是否有更好的解决方案?
4. xpath查询始终非常相似。是否可能使用预定义元素列表,然后使用其他Google表格函数仅使用一个IMPORTXML函数获得相同的结果?例如:
使用相应的xpath查询,这些信息是通过IMPORTXML函数检索的。在下面的示例中,列D是此产品的URL。这些函数为第3行的产品检索信息(玻璃、颜色和类型)。
=IMPORTXML(D3,"//table[@class='info-table']/tr[th/text()[contains(.,'Glass')]]/td")
=IMPORTXML(D3,"//table[@class='info-table']/tr[th/text()[contains(.,'Color')]]/td")
=IMPORTXML(D3,"//table[@class='info-table']/tr[th/text()[contains(.,'Type')]]/td")
针对每个产品,都要检索大约10列数据,因此同一个URL需要使用10个不同的IMPORTXML函数。
当产品数量较少时,它可以正常工作,但是当产品数量太多时,只能检索到部分信息,其他单元格会显示"Loading..."。
唯一的解决方法是手动复制/粘贴检索到的值(Ctrl+C,Ctrl+Maj+v),然后其他单元格就会解除冻结并开始导入值。最终,我需要为所有单元格执行此操作,这需要很长时间。
1. 为什么有些单元格会一直显示"Loading..."?Google有没有设置限制?
2. 我应该调整我的函数以优化这个过程,并尽可能减少IMPORTXML函数的数量吗?
3. 除了我的耗时解决方法外,你是否有更好的解决方案?
4. xpath查询始终非常相似。是否可能使用预定义元素列表,然后使用其他Google表格函数仅使用一个IMPORTXML函数获得相同的结果?例如:
=IMPORTXML(D3,"//table[@class='info-table']/tr[th/text()[contains(.,{'Glass', 'Color', 'Type'})]]/td")