首页 > 解决方案 > 使用 Google 表格进行网页抓取。IMPORTXML 函数需要正确的 xpath

问题描述

有一个包含 MPN 列表(制造商零件编号)的谷歌表。当我有一个项目的 MPN 时,试图从一个名为 wikiarms 的网站上抓取 UPC 代码。

我有在另一个站点上执行此操作的正确公式。

=IMPORTXML("http://gun.deals/search/apachesolr_search/"&B1,"//dd/a[../../dt[contains(text(),'UPC')]]|//dd/span[../../dt[contains(text(),'UPC')]]")

试图找出正确的 xpath 来完成这个公式。我看过的一些视频说在Chrome中打开页面并使用inspector选择并复制xpath以完成importxml功能。我试过这个没有运气。

示例访问https://www.wikiarms.com/guns?q=20071

在表中有一个“在 6 家商店中可用”按钮,单击该按钮以显示列表。UPC 应列在 MPN 之后。

如果我在 Chrome 中复制 xpath,这就是结果

/html/body/div[1]/div/div/div[2]/div/div/div[2]/div[2]/table/tbody/tr[2]/td[5]

=IMPORTXML("https://www.wikiarms.com/guns?q="&B2,"xpath here")

我必须在这个公式的末尾添加什么来提取 UPC 代码?我将使用这个公式提取大约 1000 件商品的 UPC 代码。

谢谢您的帮助。

标签: xpathweb-scrapinggoogle-sheetsgoogle-sheets-importxml

解决方案


使用您的示例链接,尝试

=IMPORTXML("https://www.wikiarms.com/guns?q=20071","//td[@class='upc']/a/@title")

看看它是否适合你。


推荐阅读