2

Curl を使用してウィキペディアからページの概要を取得しようとしています。私のコードは

<?php

$title = <input from user>;

$url = 'http://en.wikipedia.org/w/api.php?action=query&titles='.$title.'&format=xml&prop=revisions&rvprop=content&redirects';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_USERAGENT, 'testing wikipedia services');
$result = curl_exec($curl);
print $result;

//$content = $c->query->pages->page->revisions->rev;
//print $content;
?>

最初に、コードをテストして、コードがページ全体を返すかどうかを確認したいと考えています。しかし、次のようなエラーが表示されます

リクエスト: [未知の方法] http://en.wikipedia.org:80/w/api.php?action=query&titles=US Environmental Protection Agency&format=xml&prop=revisions&rvprop=content&redirects, 161.80.8.53 から cp1005.eqiad.wmnet ( squid/2.7.STABLE9) to [unknown host] ([unknown]) エラー: ERR_INVALID_URL、errno [エラーなし] at Tue, 04 Dec 2012 16:55:52 GMT

URL は機能しますが、それでも不明なメソッド エラーが発生します。

4

2 に答える 2

3

URL に含める必要がありurlencode($title)ます。

于 2012-12-04T17:10:56.217 に答える
1

$title 変数をエンコードするのを忘れました。例 :

str_replace(' ', '_', $title);
于 2012-12-04T17:07:57.223 に答える