Wikiepdia APIリンクを使用して、いくつかの世界的に知られている文字についての基本情報を取得します。フィードをPHPで解析する方法
例:これは今、私の質問
を次のように表示されるでしょう(About Dave Longaberger)
私はそれを表示するために<extract></extract>
の間に、このような基本的な情報を取得するためにXMLを解析したいと思います。ここで
<?PHP
function get_url_contents($url){
$crl = curl_init();
$timeout = 5;
curl_setopt ($crl, CURLOPT_URL,$url);
curl_setopt ($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($crl, CURLOPT_CONNECTTIMEOUT, $timeout);
$ret = curl_exec($crl);
curl_close($crl);
return $ret;
}
$url = "http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=Dave Longaberger&format=xml&exintro=1";
$text = file_get_contents($url);
echo $text;
?>
: <?PHP
$url = 'http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=Dave Longaberger&format=xml&exintro=1';
$xml = simplexml_load_file($url);
// get extract
$text=$xml->pages[0]->extract;
// show title
echo $text;
?>
もう一つのアイデアを(I/Oの警告は、外部エンティティを読み込むことができませんでした)だけでなく、失敗した(!HTTPリクエストが失敗したストリームをオープンに失敗しました)
どのようにそれを行うにはどのようなアイデア。 〜おかげ
$url = 'http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles='.rawurlencode('Dave Longaberger').'&format=xml&exintro=1'; $text = file_get_contents($url);
まあ
$url = 'http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=Dave Longaberger&format=xml&exintro=1';
$url = urlencode($url);
$text = file_get_contents($url);
も
を働いていない(まだ動作していない後に追加でurlencodeまたはrawurlencode)更新また$name = "Dave Longaberger";
$name = urlencode($name);
$url = 'http://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles='.$name.'&format=xml&exintro=1';
$text = file_get_contents($url);
「私は本当にドンので、何とかできないような表情を知っている。
スクリプトは、連絡先情報と有益なUser-Agent文字列を使用する必要があります、または彼らは予告なくIP-ブロックされることがあります。 – ccKep