2013-01-08 59 views
-1

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

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

它可以包含HTML标签(甚至比纯文本更好)。

+0

您可以改为访问http://dbpedia.org/resource/Hollywood。这是一种提供多种RDF格式的wikipdia数据集的服务。看看页脚。尤其是XML格式可能会对你有所帮助 – KingCrunch

回答

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也是一种选择。

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

+0

对不起。好的,我有 http://en.wikipedia.org/w/api.php?format=xml&action=query&prop=revisions&titles=Hollywood&rvprop=content&rvsection=0&rvparse 如何将第一段放入$ result?谢谢。 – Haradzieniec

+0

我不知道PHP,所以我不能帮你,对不起。 – svick

+0

这是否被认为是“刮”? – user86895

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,所以它应该是易于使用的库项目。

+1

屏幕抓取维基百科页面不是一个好主意,因为布局随时都可能发生变化,并且有API可用。 – svick