谷歌电子表格中的Xpath或Importxml

时间:2016-09-17 13:50:39

标签: xml xpath google-sheets

我在从雅虎到Google表格中获取SERP(搜索引擎结果)时遇到了麻烦。我想在此页面上获得 href的第一个结果

这是xpath:

//*[@id="yui_3_10_0_1_1474115100593_232"]

以下是我的问题:site:linkedin.com/company/ 1011vc.com,TenEleven Ventures

Google search results snapshot

但我没有得到我希望得到的href。我可以帮助解决这个问题吗? :'(

3 个答案:

答案 0 :(得分:1)

您应该根据搜索的一部分使用更通用的xpath,例如:

//h3/a[contains(@href, ventures)]/@href

答案 1 :(得分:0)

试试这个:

{{1}}

答案 2 :(得分:0)

你实际上可以简单地将你的xpath简化为//h3/a/@href然后将它包装在修剪中以仅给你第一个结果 - 也就格式化而言 - 我个人总是最终使用regexreplace获得我想要的那个,并将其重新格式化为实际网址:

=REGEXREPLACE(TRIM(IMPORTXML(A1,"//h3/a/@href")),"(^.*linkedin.com%2fcompany%2f)(.*)(/RK.*)","http://linkedin.com/company/$2")

正则表达式基本上将这些部分分为3部分 - 1)字符串的开头,直到你到达列出了linkedin的部分 - 表示为^.*linkedin.com%2fcompany%2f,因为结果作为编码的url字符串返回

2)公司资料的唯一ID或slug的通配符值 - (.*)

3)然后跟随之后的部分,以便知道在哪里停止:(/RK.*)

使用regexreplace,您可以指定您希望它用2nd捕获组替换整个字符串 - 由$2表示 - 然后只是为了完整的循环我重新获得前半部分最后的网址,以便它不被编码

enter image description here