Php 维基百科API-从infobox获取完整信息
我正在尝试提取母公司信息(在infobox窗格中),例如“KFC” 如果您访问 url。。。信息框包含属性(父项=Yum!Brands) 。。然而,当我通过PHP API访问时。。不包括父级信息 我如何确保WikipediaAPI也返回“Parent=”信息(对于“KFC”这样的品牌术语)。本质上,我想通过维基百科API提取百胜品牌是肯德基母公司的信息 谢谢 看看官方获取信息的方式 我的建议是使用屏幕抓取,这将永远是最好的,即使它不赞成。唯一的缺点是,如果Wikipedia改变它的外观,您将不得不更新代码 一个到PHP的简单HTML DOM解析器 编辑: 至少我正在做一些事情,而不是链接到非工作资源和否决正确答案 下面是我使用PHP简单HTML DOM解析器从Infobox窗格获取母公司信息的代码Php 维基百科API-从infobox获取完整信息,php,api,wikipedia,Php,Api,Wikipedia,我正在尝试提取母公司信息(在infobox窗格中),例如“KFC” 如果您访问 url。。。信息框包含属性(父项=Yum!Brands) 。。然而,当我通过PHP API访问时。。不包括父级信息 我如何确保WikipediaAPI也返回“Parent=”信息(对于“KFC”这样的品牌术语)。本质上,我想通过维基百科API提取百胜品牌是肯德基母公司的信息 谢谢 看看官方获取信息的方式 我的建议是使用屏幕抓取,这将永远是最好的,即使它不赞成。唯一的缺点是,如果Wikipedia改变它的外观,您将
<?php
//The folder where you uploaded simple_html_dom.php
require_once('/homepages/../htdocs/simple_html_dom.php');
//Wikipedia page to parse
$html = file_get_html('http://en.wikipedia.org/wiki/KFC');
foreach ( $html->find ( 'tr th a[title=Holding company]' ) as $element ) {
$element = $element->parent;
$element = $element->parent;
$tabella = $element->find ( 'td', 0 );
//Now $parent contains "Yum! Brands"
$parent = $tabella->plaintext;
echo $parent;
}
?>
如果这个答案适合你的需要,请选择它作为最佳答案并投票,因为我花了很多精力,大约1小时=/
谢谢;) ChicagoDude已经在使用MediaWiki API了——建议他阅读维基百科的文档指导他使用这个API是没有用的,更不用说解决方案了。我指导他使用DOM解析器,这似乎是唯一的解决方案