2014-02-12 112 views
2

我試圖使用Google Spreadsheets中的ImportXML函數來查找Google搜索的第一個結果的URL(不包括任何公佈的鏈接)。我認爲我明白所有的搜索結果都顯示在類別爲「r」的h3元素中,我希望下面的XPath表達式能夠找到a)搜索結果的所有鏈接(括號中的部分),然後b)選擇第一個那些:如何使用IMPORTXML獲取Google搜索的第一個結果的URL?

=importxml(A1,"(//h3[@class='r']/a/@href)[1]") 

[其中A1是例如「=」https://www.google.com/search?q=U+Chicago & num = 10「」]

不幸的是,我確實得到了Google Maps的鏈接。

回答

1

縮小範圍查詢相關的ID,如:

//ol[@id='rso']//h3[@class='r']/a/@href 
0

我一直在掙扎了同樣的事情。還沒有找到一種方法來獲得只返回一個URL的唯一XPath查詢,但是您可以強制Google僅返回最上面的搜索結果!

在您的搜索URL中,將「& num = 10」更改爲「& num = 1」。而已。

4

而不是篩選結果,你應該設置谷歌參數只返回一個結果。查詢參數應包括響應數(NUM)和頁面(開始)

"https://www.google.com/search?q=stack+overflow&num=1&start=1" 
0

你都可以做,你可以把它返回一個結果爲「& NUM = 1」,也使用XPath「 //引用「

相關問題