Wikipedia API - 提取内容框

时间:2014-01-30 06:00:34

标签: php json wikipedia-api

我正在尝试在灰色框(摘要/信息框)中提取信息,以获取http://en.wikipedia.org/wiki/DressBarn等链接(灰色框/右栏中的信息,如类型等)。

我正在使用此http://en.wikipedia.org/w/api.php?action=query&prop=extracts|info&exintro&titles=DressBarn&format=json&redirects&inprop=url&indexpageids - 它只返回摘要。

我尝试过试验沙盒,但无法弄清楚如何提取灰色框中特别包含的信息。

1 个答案:

答案 0 :(得分:1)

您可以使用PHP Simple HTML DOM Parser

<?php
//The folder where you uploaded simple_html_dom.php
require_once('/homepages/0/d502303335/htdocs/js/simple_html_dom.php');

//Wikipedia page to parse
$html = file_get_html('https://en.wikipedia.org/wiki/Burger_King');

foreach ( $html->find ( 'table[class=infobox vcard]' ) as $element ) {

    $cells = $element->find('td');

    $i = 0;

    foreach($cells as $cell) {

        $left[$i] = $cell->plaintext;

        if (!(empty($left[$i]))) {

            $i = $i + 1;

        }

    }

    $cells = $element->find('th');

    $i = 0;

    foreach($cells as $cell) {

        $right[$i] = $cell->plaintext;

        if (!(empty($right[$i]))) {

            $i = $i + 1;

        }

    }

    print_r ($right);

    echo "<br><br><br>";

    print_r ($left);

    //If you want to know what kind of industry burger king is
    echo "Burger king is $right[2], $left[2]

}

?>

如果这个答案符合您的需求,请选择它作为最佳答案并提出建议,因为我花了很多精力。