2015-06-26 86 views
0

我試圖從維基百科利用其API檢索作者阿加莎克里斯蒂的頁面。維基百科似乎執行這項工作相當好:在維基百科進行模糊搜索

https://en.wikipedia.org/wiki/Main_Page 我搜索阿加莎克里斯蒂,我找到她。

通過API這似乎是不可能的。正如我可以嘗試從API搜索沙盒建造我的查詢:

https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&list=search&srsearch=Agatha%20Christie&utf8=

我發現一個樂隊,阿加莎·克里斯蒂的紀念,一些書,沒有別的啥的。我不明白原因。與阿爾伯特愛因斯坦的查詢工作。

當然,搜索API返回所有匹配的頁面,然後我的任務是優化搜索,但爲什麼在這種情況下沒有有用的結果?

回答

1

你只是誤讀了結果。第一個結果是正確的。 https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&list=search&format=json&srsearch=Agatha%20Christie&srprop=timestamp

 { 
      "ns": 0, 
      "title": "Agatha Christie", 
      "timestamp": "2015-07-06T19:37:15Z" 
     }, 

訪問一個標題:https://en.wikipedia.org/wiki/Agatha_Christie。這是正確的頁面。片段錯誤地提取了頂部的消歧信息,「對於樂隊,請參閱Agatha Christie(樂隊)。對於視頻遊戲系列,請參閱阿加莎克里斯蒂(電子遊戲系列)»,但它只是一個片段。

有關各種搜索API的概述,包括允許使用模糊搜索(通過CirrusSearch)的概述,請參閱https://www.mediawiki.org/wiki/API:Search_and_discovery

+1

哦,我的盲人,你是絕對正確的。我仍然堅持這一點。 – donnadulcinea