You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过XPath与Excel的IMPORTXML获取多个电话号码?

Excel IMPORTXML 抓取全部电话号码问题解决

问题分析

你使用IMPORTXML仅能获取第一个电话号码,核心问题是原XPath定位错误:

  • 最初使用的//div[@class='_b0ke8']/a/@href中,HTML结构里根本不存在class="_b0ke8"的div节点,导致匹配到的是页面其他无关节点(仅第一个号码)。
  • 后续尝试的//bdo[@dir='ltr']路径本身能匹配所有目标节点,但需结合正确的父容器定位确保精准性。

正确解决方案

根据提供的HTML结构,以下两种方案均可获取全部三个电话号码:

1. 获取页面显示的格式化号码(如+7 701-211-89-19)

使用XPath直接定位bdo标签的文本内容:

//div[@class='49xkir']//bdo[@dir='ltr']/text()

对应的Excel公式:

=IMPORTXML(A2, "//div[@class='49xkir']//bdo[@dir='ltr']/text()")

2. 获取tel:链接中的纯号码(如+7771128919)

直接提取a标签的href属性,若需自动去除tel:前缀可嵌套函数:

  • 提取带tel:的完整链接:
//div[@class='49xkir']//a/@href

对应的Excel公式:

=IMPORTXML(A2, "//div[@class='49xkir']//a/@href")
  • 自动去除tel:前缀:
=SUBSTITUTE(IMPORTXML(A2, "//div[@class='49xkir']//a/@href"), "tel:", "")

注意事项

输入公式后,Excel会自动将所有匹配结果按垂直方向填充到下方单元格,无需手动拆分。

内容的提问来源于stack exchange,提问作者Villmark Deschanel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 14:28:28