从维基百科文章中摘录?

Fel*_*lix 11 api parsing wikipedia wikipedia-api

我一直在维基百科API上下,但我无法弄清楚是否有一种很好的方式来获取文章的摘录(通常是第一段).获得该段落的HTML格式也会很好.

我目前看到的获得类似于片段的内容的唯一方法是执行全文搜索(示例),但这不是我想要的(太短).

有没有其他方法来获取维基百科文章的第一段而不是野蛮地解析HTML/WikiText?

小智 6

使用此链接以xml格式获取未解析的简介"http://en.wikipedia.org/w/api.php?format=xml&action=query&prop=extracts&exsentences=10&titles=Aati kalenja"

之前我可以在一个页面中通过添加iframe与src一样在一个页面中引入一个主题/文章列表,如上面的链接..但是现在chrome正在抛出这个错误 - "拒绝显示文档,因为X-禁止显示帧选项".通过什么方式?请帮忙..

  • 你的第二段听起来像一个问题,而不是一个答案.如果您想要答案,则应将其作为新问题发布.仍然,在你的第一段中提到`prop = extract`的+1.(我刚刚在下面发布了一个稍微详细的说明.) (4认同)

Fel*_*lix 3

我找不到通过 API 执行此操作的方法,因此我求助于使用PHP 的 DOM 函数来解析 HTML 。这很简单,其中包括:

$doc = new DOMDocument();
$doc->loadHTML($wikiPage);
$xpath = new DOMXpath($doc);
$nlPNodes = $xpath->query('//div[@id="bodyContent"]/p');
$nFirstP = $nlPNodes->item(0);
$sFirstP = $doc->saveXML($nFirstP);
echo $sFirstP; // echo the first paragraph of the wiki article, including <p></p>
Run Code Online (Sandbox Code Playgroud)