2017-01-10 8 views
0

나는 행동 한 배우와 영화의 그래프 데이터베이스를 만들고 싶습니다. 배우와 영화의 목록을 얻으려면 나는 pywikibot 파서를 사용하려고 노력하고 있지만, 페이지의 영화 부분을 원할 때만 전체 페이지를 볼 수있었습니다. 페이지를 파싱 할 수있는 방법이 있나요? 여기에 지금까지 한 일의 대부분의 영화가 연결되어 있기 때문에특정 위키 피 디아 페이지 섹션을 얻는 방법?

import pywikibot as pw 

site = pw.Site() 
page = pw.Page(site, actor_name) #will be put into loop to get multiple actors 
print page.text #returns full text of the page in format below 
print page.linkedPages #returns linked pages 

하나의 아이디어는 배우와 관련된 모든 링크 된 페이지를 반환하는 것이었다했다한다. 텍스트 데이터를 가져 오는 형식은 다음과 같습니다.

페이지의 Filmography 부분 만 얻으려면 어떻게해야합니까?

답변

1

Wikipedia API으로 할 수 있습니다. 응답에서

https://en.wikipedia.org/w/api.php?action=parse&prop=sections&page=William Alland 

은 우리가 2 것을 볼 예를 들어, 당신은 이름 "필모그래피"에 의해 함께 섹션의 인덱스을 얻을 필요가 William Alland에 대한 필모그래피 섹션을 얻을 수 있습니다. 그리고 우리는이 섹션의 텍스트를 얻기 위해 그 인덱스를 사용해야합니다 :

https://en.wikipedia.org/w/api.php?action=parse&prop=text&section=2&page=William Alland 

참고 : 사용 prop=wikitext 대신 text 위키 형식의 콘텐츠를 할 수 있습니다.