从维基百科Api获取意大利语名称

时间:2013-03-19 18:59:40

标签: php wikipedia wikipedia-api

我们正在尝试从维基百科的api中获取意大利语数据。我们有多个名字,需要获得前10个结果。

e.g。我们希望从此结果的“Persone”部分收集数据:http://it.wikipedia.org/wiki/Francesco_(nome)

现在我正在尝试这种方法:

$kw = $name."_(nome)";
$url = "http://it.wikipedia.org/w/api.php?format=json&action=query&titles=".$kw."&prop=revisions&rvprop=content";

其他问题没有多大帮助,我没有输出。

1 个答案:

答案 0 :(得分:1)

您可以使用php dom parserDocs

通过简单查找dom,这里是第一个名字的代码:

require('dom/simple_html_dom.php');

$name = 'Francesco';
$kw = $name . '_(nome)';
$html = file_get_html('http://it.wikipedia.org/wiki/' . $kw);

$span = $html->getElementById('Persone');
$h2 = $span->parent();


$ul = $h2->next_sibling()->next_sibling()->next_sibling()->next_sibling();

$lis = $ul->find('li');

foreach($lis as $li){
    echo($li->plaintext . '<br />');
}