获取维基百科的第一段文章

时间:2013-01-08 09:05:29

标签: php web-scraping wikipedia wikipedia-api

从维基百科获取好莱坞一词的第一段文章的正确方法是什么?因此,$result变量包含first paragraph of the page

  

好莱坞是位于美国加利福尼亚州洛杉矶的一个地区,位于洛杉矶市中心西北偏西。[2]由于其作为电影制片厂和电影明星历史中心的名声和文化身份,好莱坞这个词经常被用作美国电影的转喻。尽管大部分电影业已经分散到西洛杉矶,圣费尔南多和圣克拉丽塔山谷等周边地区,但编辑,效果,道具,后期制作和照明公司等重要的辅助行业仍然存在于好莱坞,派拉蒙影业的背景。

如果它包含HTML标签(甚至比纯文本更好)也没关系。

2 个答案:

答案 0 :(得分:3)

我不知道Kohana是什么,但要获取某个维基百科页面的HTML文本,您可以使用the API

例如,要获取好莱坞文章第一部分的HTML,您可以使用如下查询:

http://en.wikipedia.org/w/api.php?format=xml&action=query&prop=revisions&titles=Hollywood&rvprop=content&rvsection=0&rvparse

这是XML格式,但JSON也是一种选择。

此外,这将返回整个第一部分(包括信息框),而不仅仅是第一段。

答案 1 :(得分:1)

您可以使用Simple HTML DOM库轻松解析网页中的HTML:

include('inc/simple_html_dom.php'); // this line should be replaced with the Kohana way of including the library

// Create DOM from URL
$html = file_get_html('http://en.wikipedia.org/wiki/Hollywood');

// Get the first paragraph
$p = $html->find('p', 0);

echo $p->innertext; // Prints <b>Hollywood</b> is a district in (...)

我从未使用过Kohana但似乎有at least 2 Kohana modules for Simple HTML DOM,因此在项目中使用该库应该很容易。