È possibile interrogare l'API di Wikipedia per articoli che contengono un modello specifico? The documentation non descrive alcuna azione che filtra i risultati di ricerca in pagine che contengono un modello. In particolare, sono dopo le pagine che contengono Template:Persondata
. Successivamente, spero di riuscire a recuperare solo quel modello specifico per popolare i dati genealogici per il progetto openancestry.org.L'API di Wikipedia supporta la ricerca di un modello specifico?
La query seguente mostra che la pagina di Albert Einstein contiene il modello di Persondata, ma non restituisce il contenuto del modello e non so come ottenere un elenco di titoli di pagina che contengono il modello. http://en.wikipedia.org/w/api.php?action=query&prop=templates&titles=Albert%20Einstein&tlcontinue=736|10|ParmPart
Returns:
<api>
<query>
<pages>
<page pageid="736" ns="0" title="Albert Einstein">
<templates>
...
<tl ns="10" title="Template:Persondata"/>
...
</templates>
</page>
</pages>
</query>
<query-continue>
<templates tlcontinue="736|10|Reflist"/>
</query-continue>
</api>
ho il sospetto che non riesco a ottenere quello che ho bisogno da API, ma spero che mi sbaglio e che qualcuno ha già segnato un percorso questa strada .
+1 che è cool e quasi fa quello di cui ho bisogno, ma per qualche motivo i risultati tendono ad essere da tutti tranne il namespace principale rendendolo inutile per le mie esigenze. Anche se aggiungo blnamespace = 0 come da documentazione, la ricerca non restituirà i dati dallo spazio dei nomi degli articoli, che è dove saranno tutte le biografie persondate utili. Persondata nello spazio dei nomi di talk è praticamente inutile. – grenade
Oops, a quanto pare non copre le inclusioni del modello. Ma la query 'embeddedin' lo fa, quindi prova questo:' http: //en.wikipedia.org/w/api.php? Action = query & list = embeddedin & eititle = Template: Persondata & format = xml' – jpatokal