servicios de google en php 35 curso php tutoriales academia usero estepona

Upload: jose-luis-usero-vilchez

Post on 04-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    1/8

    @INTE ACADEMIA Curso de PHP

    Sesin 35. Usar Google

    35.1. Lo que vamos a hacer

    Vamos a usar el servicio de Google SOAP Search API para hacer uso de Google

    dentro de nuestras aplicaciones.

    Una API (del ingls Application Programming Interface - Interfaz de

    Programacin de Aplicaciones) es un conjunto de especificaciones de comunicacin

    entre componentes software. La API que vamos a usar nos permite acceder al buscador

    Google y enviarle rdenes de bsqueda desde nuestros propios programas.

    35.2. Primero darse de alta

    Lo primero que tenemos que hacer es darnos de alto en el servicio. Sin darnos de alta no

    podemos usar ninguno de los servicios.

    1. Entre en la siguiente pgina.

    www.google.com/apis/

    2. Primero bjese el Developer`s kit (kit del desarrollador).

    1/8 AINTE INFORMTICA S.L.

    http://es.wikipedia.org/wiki/Especificaci%C3%B3nhttp://es.wikipedia.org/wiki/Softwarehttp://es.wikipedia.org/wiki/Especificaci%C3%B3nhttp://es.wikipedia.org/wiki/Software
  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    2/8

    @INTE ACADEMIA Curso de PHP

    3. Descargue el archivo.

    4. Aqu tiene el contenido del archivo. Dentro de l tiene informacin sobre como

    conectar la API con Java.

    5. Ahora tiene que obtener una cuenta de Google. Haga clic en el enlace Create aGoogle account en la zona inferior de la pgina de descarga.

    2/8 AINTE INFORMTICA S.L.

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    3/8

    @INTE ACADEMIA Curso de PHP

    6. Rellene los datos de la cuenta.

    7. Ahora entre en su cuenta de correo y siga las instrucciones que se le han enviado

    para dar de alta la cuenta.

    3/8 AINTE INFORMTICA S.L.

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    4/8

    @INTE ACADEMIA Curso de PHP

    8. Una vez que la cuenta ha sido verificada se nos muestra el siguiente mensaje.

    9. Una vez que se verifica la cuenta, nos envan un email con la clave de licencia. Esta

    clave de licencia nos permite hacer 1000 busquedas al da con fines no comerciales.

    10. El email nos da la clave de licencia.

    4/8 AINTE INFORMTICA S.L.

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    5/8

    @INTE ACADEMIA Curso de PHP

    35.3. Activar SOAP

    SOAP es un servicio que no viene activado por defecto. Hay que activarlo aadiendo una

    lnea al archivo php.ini que est dentro de la carpeta bin de la carpeta Apache2 del

    servidor WAMP.

    La lnea es la siguiente:

    ;extension=php_pdo_oci8.dll

    ;extension=php_pdo_odbc.dll

    ;extension=php_pdo_pgsql.dll

    extension=php_sqlite.dll

    extension=php_soap.dll

    Una vez activado, reinicie el servidor WAMP,entre en LOCALHOST y compruebe que se

    ha activado SOAP haciendo clic en el enlace PHPINFO().

    35.4. Usar SOAP y Google

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    6/8

    @INTE ACADEMIA Curso de PHP

    include("SOAP/Client.php");

    $soapclient = new SOAP_Client('http://api.google.com/search/beta2');$soapoptions = array('namespace' => 'urn:GoogleSearch',

    'trace' => 0);

    ////////////////////////////////////////////////////////////// Calls the Google API and retrieves the estimated number of// search results for that query into $num.function do_search( $query, $key, &$num ){

    global $soapclient;global $soapoptions;

    // Note that we pass in an array of parameters into the Google search.// The parameters array has to be passed by reference.// The parameters are well documented in the developer's kit on the// Google site http://www.google.com/apis

    $params = array('key' => $key, // the Developer's key'q' => $query, // the search query'start' => 0, // the point in the search results should

    Google start'maxResults' => 1, // the number of search results (max 10)'filter' => false, // should the results be filtered?'restrict' => '','safeSearch' => false,'lr' => '','ie' => '','oe' => ''

    );

    // Here's where we actually call Google using SOAP.// doGoogleSearch is the name of the remote procedure call.

    $ret = $soapclient->call('doGoogleSearch', $params,$soapoptions);

    if (PEAR::isError($ret)){

    print("
    An error #" . $ret->getCode() . " occurred!
    ");print(" Error: " . $ret->getMessage() . "
    \n");return false;

    }else // We have proper search results{

    // Results from the Google search are stored in the object $ret.// The following block of code prints// out the structure and contents of the object to the screen:print("\n
    ");print_r( $ret );print("
    \n");

    // in this example, the only thing we need from the searchresults

    // is the estimatedTotalResultsCount$num = $ret->estimatedTotalResultsCount;

    }

    return true;

    6/8 AINTE INFORMTICA S.L.

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    7/8

    @INTE ACADEMIA Curso de PHP

    }

    ////////////////////////////////////////////////// Does Google search with retry.// Retry is useful because sometimes the connection will// fail for some reason but will succeed when retried.

    function search( $query, $key, &$num ){$result = false;$max_retries = 5;$retry_count = 0;

    while( !$result && $retry_count < $max_retries ){

    $result = do_search( $query, $key, $num );if( !$result ){

    print( "Attempt $retry_count failed.
    \n");}

    $retry_count++;}if( !$result ){

    print("
    Sorry, connection to Google failed after retryingseveral times. Please check that the Google Developer's Key you entered wascorrect. To obtain a developer's key or for more information on the Google API,visit Google API home page.
    \n");

    }return $result;

    }

    //////////////////////////////////////////////////////////// The main part of this script

    print("\n\nGoogle API Example with PHP, SOAP, and WebServices\n\n");

    print("Google API Example Using PHP

    For more info on the Google API, visit the Google developer's page

    ");

    if ( $key == "" ){

    /*You get a developer's key when you register to use Google's API.A developer's key is a unique string that identifies you to Google.You get a maximum of 1000 searches per day using your developer's key.*/$key = 'thisIsNotaRealKeyBQSgnSiZySpQmfd1wqG'; // put your developer's

    key here.}

    if( $query != "" ){

    // remove the slashes that are automatically added by PHP before eachquotation mark

    $query = stripslashes($query);

    if( search( $query, $key, $num ) )

    7/8 AINTE INFORMTICA S.L.

  • 7/30/2019 Servicios de Google en PHP 35 Curso PHP Tutoriales Academia Usero Estepona

    8/8

    @INTE ACADEMIA Curso de PHP

    {print("Search results\n

    The estimated number of

    results for the search query $query is $num.

    ");}

    }

    //// print the input form//print("Test out the Google API with PHP, SOAP, and Web Services:

    Search Query

    Google Developer's Key

    ");

    print("About

    This example was created by Geoff Peters, creator of GoogleDuel and GoogleDuel-Ultra.Feel free to re-use or distribute this source code.

    ");

    print("Source Code

    ");

    highlight_file("apiexample.php");

    print("\n");?>

    8/8 AINTE INFORMTICA S.L.