我在从雅虎到Google表格中获取SERP(搜索引擎结果)时遇到了麻烦。我想在此页面上获得 href的第一个结果。
这是xpath:
//*[@id="yui_3_10_0_1_1474115100593_232"]
以下是我的问题:site:linkedin.com/company/ 1011vc.com,TenEleven Ventures
但我没有得到我希望得到的href。我可以帮助解决这个问题吗? :'(
答案 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
表示 - 然后只是为了完整的循环我重新获得前半部分最后的网址,以便它不被编码