0

検索 API を使用して、Google から 10 件を超える結果を取得しようとしています。Google 検索 API では 10 件の結果しか返されず、100 件を取得するには 10 回呼び出す必要があることはわかっていますが、うまく機能していないようです。do while ループと for ループを作成しようとしましたが、同じ結果が何度も得られるようです。

<?php


if(isset($_GET['input']) && $_GET['input'] != "")
{

    echo "<br />Your Search Results Google:<br /><br />";


    $i=0;



    $url =  "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&    key=AIzaSyBacVRiPNo7uMqhtjXG4Zeq1DtSQA_UOD4&cx=014517126046550339258:qoem7fagpyk
&num=10&start=".$i."&"."q=".str_replace(' ', '%20', $_GET['input'])

// sendRequest
// note how referer is set manually
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
$body = curl_exec($ch);
    curl_close($ch);





// now, process the JSON string




$json = json_decode($body,true); 


do
{

foreach ($json['responseData']['results'] as $data) {
echo '
    <p>
        ', $data ['title']," ---> <u>Google SE </u>" ,'<br />
        ', '<a href ='.$data['url'].'>'.$data['url']."</a>" , '<br />
        ', $data['content'],'
    </p>';
}

$i++;       

}
while($i<3);


}
?>

任意の入力をいただければ幸いです。

4

1 に答える 1