2014-05-14 4 views
3

위키 피 디아 API가 가진 모든 옵션에 조금 갇혀 있습니다. 내 목표는 위키 피 디아 페이지의 단어의 양을 얻는 것입니다. 위키의 URL이 있습니다.위키 피 디아 Api는 단어의 양을 얻습니다.

http://en.wikipedia.org/w/api.php?format=xml&action=query&list=search&srsearch=camera&srlimit=1

<api> 
<query-continue> 
<search sroffset="1"/> 
</query-continue> 
<query> 
<searchinfo totalhits="68658"/> 
<search> 
<p ns="0" title="Camera" snippet="A <span class='searchmatch'>camera</span> is an optical instrument that records image s that can be stored directly, transmitted to another location, or both. <b>...</b> " size="43246" wordcount="6348" timestamp="2014-04-29T15:48:07Z"/> 
</search> 
</query> 
</api> 

이 (오른쪽으로 조금 이동 돌려 줘야하고 단어 수

그러나이 쿼리를 찾을 수 :

검색 옵션은이 값을 반환하지 않습니다 검색 결과 1 위를 보여줍니다. 그러나 위키피디아 이름을 검색하면 URL에서 첫 번째 결과로 항상 해당 레코드를 찾습니다.

그래서이 단어 수를 위키피디아 페이지로 가져 오는 방법이 있습니까?

답변

4

다른 API는이 정보를 제공하지 않으므로 list=search 인 kludge가 유일한 방법입니다. 정확한 제목을 알고 있다면 &srwhat=nearmatch을 쿼리에 추가하여 더 나은 결과를 얻을 수 있습니다 (항상 1 개의 결과를 반환합니다). 자세한 내용은 the docs을 참조하고 the sandbox을 시도하십시오.

단어 수는 데이터베이스에 저장되지 않으므로 정확한 속도가 아닌 정보의 경우 API가 Lucene/Elasticsearch로 이동해야하므로이 정보가 필요한 경우 dump을 다운로드해야합니다.