Pregunta

Actualmente estoy usando el siguiente código:

$zipcode = '91762';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=restauraunts+".$zipcode."&rsz=large");
curl_setopt($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec($ch);
$data = ob_get_contents();
ob_end_clean();
curl_close($ch);
$restauraunts_array = json_decode($data, true);

        foreach($restauraunts_array['responseData']['results'] as $key => $value) {
            $results[] = array(
                'title' => $value['titleNoFormatting'],
                'address' => $value['streetAddress'],
                'city' => $value['city'],
                'state' => $value['region'],
                'zipcode' => $zipcode,
                'phone' => $value['phoneNumbers'][0]['number'],
                'lat' => $value['lat'],
                'lng' => $value['lng']
            );
        }

Pero va a devolver sólo 7 resultados. Busco a una manera de recuperar muchos más. He mirado a través de la API de código y no he encontrado ningún método para obtener más resultados espalda. Se puede hacer? ¿Me puede apuntar a la documentación / implementación de cómo conseguir más de unos pocos resultados?

RESPUESTA: Mikey fue capaz de proporcionar la respuesta que estaba buscando. Esto es lo que estoy haciendo para obtener 32 resultados:

 $zipcode = '91762';
    $results = array()
    $counter = array(0,8,16,24);
    foreach($counter as $page) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=restauraunts+".$zipcode."&rsz=large&start=".$page);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    ob_start();
    curl_exec($ch);
    $data = ob_get_contents();
    ob_end_clean();
    curl_close($ch);
    $restauraunts_array = json_decode($data, true);
    if(!empty($restauraunts_array['responseData']['results'])) {
            foreach($restauraunts_array['responseData']['results'] as $key => $value) {
                $results[] = array(
                    'title' => $value['titleNoFormatting'],
                    'address' => $value['streetAddress'],
                    'city' => $value['city'],
                    'state' => $value['region'],
                    'zipcode' => $zipcode,
                    'phone' => $value['phoneNumbers'][0]['number'],
                    'lat' => $value['lat'],
                    'lng' => $value['lng']
                );
            }
      }
      return $results;
¿Fue útil?

Solución

  

En este momento está limitado en la mayoría   casos a un total de 64 Resultados -   a través de 8 páginas de resultados de cada 8 -   que se puede recuperar con la   API de búsqueda. Las excepciones a esta   regla son locales y Blog. Local   devolverá un máximo de 4 páginas de 8   los resultados, para un total de 32, y   Blog devolverá sólo los primeros 8.

Fuente: http://groups.google .com / grupo / Google AJAX-Search-API / browse_thread / hilo / db6616286ce83ca0

Otros consejos

Esto no es correcto -. 4 páginas con 8 resultado de cada uno es sin duda el máximo que puede recuperar

Es 32 resultados máximo de búsqueda local -. 64 resultados es el máximo para búsqueda normal

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top