2014-07-17 2 views
0

나는 모든 쿼리 문자열에 대한 간단한 설명을 얻을 수있는 mediawiki API를 찾고 있습니다. 예를 들어 Nicolas Cage를 검색하면 그에 대한 간단한 설명이 반환됩니다. MediaWiki API에서 기사 요약 가져 오기

이 나는 ​​소품이 = 수정이 맞다면 확실하지 않다 http://en.wikipedia.org/w/api.php?%20format=json&action=query&titles=Nicolas%20Cage&prop=revisions&rvprop=content

을 시도했다. 제 의도는 페이지의 최종 버전에 대한 간단한 설명을 얻는 것입니다.

또한 쿼리 문자열에서 위키 피 디아 페이지 (웹/모바일)의 링크를 제공 할 수있는 다른 API가 필요합니다. 즉 Nicolas Cage의 경우 http://en.wikipedia.org/wiki/Nicolas_cage을 반환해야합니다.

답변

2
  1. 가 기본적으로 미디어 위키의 페이지 요약 같은 건 없지만,이 같은 페이지의 첫 번째 단락 얻을 수 있습니다 : 위키가 확장 PageSummaries가 설치되어 http://en.wikipedia.org/w/api.php?action=parse&page=Nicolas_Cage&prop=text&section=0
    경우 해당 사용할 수 있습니다 (확장 설명 페이지의 this example에서와 같이) 정확히 무엇을 요구하는지 확인하십시오.

  2. 문자열을 일치하는 페이지가이 같은 열린 검색 기능을 사용 찾는 방법은 다음과 같습니다 http://en.wikipedia.org/w/api.php?action=opensearch&search=Nicolas%20cage&namespace=0

편집 : @Bergi가 열려 검색도 페이지의 요약을 제공한다는 의견에 지적한다. 나는 어떻게 든 그것을 놓쳤다.

+2

+1. [Opensearch] (https://www.mediawiki.org/wiki/API:Opensearch)는'' 노드 – Bergi

+1

에서 발췌 한 내용을 줄 것입니다.'action = query'를 사용하면'& prop = extracts'도 사용할 수 있습니다. 추출물의 길이를 더 잘 제어 할 수 있습니다. – Ainali

0

검색 문자열 Nicolas Cage의 요약을 원한다고 가정 해보십시오. 페이지의 섹션 0을 얻을 수
"https://en.wikipedia.org/w/api.php?action=query&list=search&srsearch=Nicolas%20Cage&format=json&srlimit=1"
단계 2.이 페이지 ID :

1 단계는 페이지 ID를 가져 "https://en.wikipedia.org/w/api.php?action=parse&section=0&pageid=21111&prop=text&format=json"
3 단계 구문 분석 요구 사항에 따라.
3 단계가 Python 용으로 확장되었습니다. 대상 태그에 BeautifulSoup을 사용하고 get_text()가 일반 텍스트를 제공합니다.
rvprop을 사용하여 최신 개정판을 가져오고 mediaWIKI 설명서를 계속 읽어보십시오.

대체 솔루션 :
1 단계 위의 1 단계를 사용하여 페이지 제목을 가져옵니다.
2 단계 제목을 다음과 같이 사용하십시오. https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=&titles=Nicolas%20Cage

관련 문제