Usando la API de búsqueda de Google con Python

Usando la API de búsqueda de Google con Python
No es noticia que Google sea el motor de búsqueda más grande del mundo. Muchas personas harán un esfuerzo adicional para que su contenido se clasifique en Google antes de cualquier otro motor de búsqueda. Como resultado de esto, Google tiene muchos resultados de calidad para cada búsqueda y con excelentes algoritmos de clasificación puede esperar obtener los mejores resultados de búsqueda en Google.

Esto tiene una implicación. Su implicación es que existe muchos datos útiles en Google y eso requiere la necesidad de raspar estos datos dorados. Los datos raspados se pueden utilizar para el análisis de datos de calidad y el descubrimiento de ideas maravillosas. También puede ser importante para obtener una gran información de investigación en un intento.

Hablando de raspado, esto se puede hacer con herramientas de terceros. También se puede hacer con una biblioteca de Python conocida como Screapy. Scrapy tiene una calificación para ser una de las mejores herramientas de raspado, y se puede usar para raspar casi cualquier página web. Puede obtener más información sobre la biblioteca de Scrapy.

Sin embargo, independientemente de las fortalezas de esta maravillosa biblioteca. Rasparse los datos en Google podría ser una tarea difícil. Google cae duro en cualquier intento de raspado web, asegurando que los scripts de raspado ni siquiera realicen tantas solicitudes de 10 raspas en una hora antes de que se prohíba la dirección IP. Esto hace inútiles.

Google da la oportunidad de raspar la información. Sin embargo, cualquier raspado que se haga debe ser a través de una interfaz de programación de aplicaciones (API).

Simplemente en caso de que aún no sepa qué es una interfaz de programación de aplicaciones, no hay nada de qué preocuparse, ya que proporcionaré una breve explicación. Por definición, una API es un conjunto de funciones y procedimientos que permiten la creación de aplicaciones que acceden a las características o datos de un sistema operativo, aplicación u otro servicio. Básicamente, una API le permite obtener acceso al resultado final de los procesos sin tener que involucrarse en esos procesos. Por ejemplo, una API de temperatura le proporcionaría los valores de Celsius/Fahrenheit de un lugar sin que tenga que ir allí con un termómetro para hacer las medidas usted mismo.

Llevando esto al alcance de la información de raspado de Google, la API que utilizaríamos nos permite acceder a la información necesaria sin tener que escribir ningún script para raspar la página de resultados de una búsqueda en Google. A través de la API, simplemente podemos tener acceso al resultado final (después de que Google hace el "raspado" al final) sin escribir ningún código para raspar páginas web.

Si bien Google tiene muchas API para diferentes propósitos, utilizaremos la API JSON de búsqueda personalizada para este artículo. Puede encontrar más información sobre esta API aquí.

Esta API nos permite hacer 100 consultas de búsqueda por día de forma gratuita, con planes de precios disponibles para hacer más consultas si es necesario.

Creación de un motor de búsqueda personalizado

Para poder usar la API JSON de búsqueda personalizada, necesitaríamos una ID de motor de búsqueda personalizada. Sin embargo, tendríamos que crear un motor de búsqueda personalizado primero que se pueda hacer aquí.

Cuando visite la página de motor de búsqueda personalizada, haga clic en el botón "Agregar" para crear un nuevo motor de búsqueda.

En el cuadro "Sitios para buscar", simplemente coloque "www.Linuxhint.com "y en el cuadro" Nombre del motor de búsqueda ", coloque cualquier nombre descriptivo de su elección (Google sería preferible).

Ahora haga clic en "Crear" para crear el motor de búsqueda personalizado y haga clic en el botón "Panel de control" de la página para confirmar el éxito de la creación.

Vería una sección de "ID de motor de búsqueda" y una identificación debajo, esa es la identificación que necesitaríamos para la API y nos referiríamos más adelante en este tutorial. La identificación del motor de búsqueda debe mantenerse privada.

Antes de irnos, recuerda que pusimos "www.linuhint.com ”antes. Con esa configuración, solo obtendríamos resultados del sitio solo. Si desea obtener los resultados normales de la búsqueda web total, haga clic en "Configurar" en el menú de la izquierda y luego haga clic en la pestaña "Conceptos básicos". Vaya a la sección "Busque toda la web" y altere esta función en.

Creando una clave API

Después de crear un motor de búsqueda personalizado y obtener su ID, el siguiente sería crear una clave API. La clave API permite el acceso al servicio API, y debe mantenerse a salvo después de la creación al igual que la identificación del motor de búsqueda.

Para crear una tecla API, visite el sitio y haga clic en el botón "Obtenga una tecla".

Crear un nuevo proyecto y darle un nombre descriptivo. Al hacer clic en "Siguiente", se generaría la tecla API.

En la página siguiente, tendríamos diferentes opciones de configuración que no son necesarias para este tutorial, por lo que simplemente hace clic en el botón "Guardar" y estamos listos para comenzar.

Acceder a la API

Hemos hecho bien obteniendo la ID de búsqueda personalizada y la clave API. A continuación, vamos a hacer uso de la API.

Si bien puede acceder a la API con otros lenguajes de programación, lo haremos con Python.

Para poder acceder a la API con Python, debe instalar el cliente de Google API para Python. Esto se puede instalar utilizando el paquete de instalación de PIP con el siguiente comando:

PIP Instale Google-API-Python-Client

Después de instalar con éxito, ahora puede importar la biblioteca en nuestro código.

La mayor parte de lo que se hará, sería a través de la función a continuación:

de Googleapiclient.Discovery Import Build
my_api_key = "tu tecla API"
my_cse_id = "tu ID de CSE"
Def Google_Search (Search_term, API_KEY, CSE_ID, ** KWARGS):
Service = build ("CustomSearch", "V1", DeveloperKey = API_KEY)
res = servicio.CSE ().List (q = search_term, cx = cse_id, ** kwargs).ejecutar()
devolver Res

En la función anterior, el my_api_key y my_cse_id Las variables deben ser reemplazadas por la tecla API y la ID del motor de búsqueda, respectivamente, como valores de cadena.

Todo lo que debe hacerse ahora es llamar a la función que pasa en el término de búsqueda, la clave API y la ID de CSE.

resultado = Google_Search ("Coffee", My_api_Key, My_CSE_ID)
Imprimir (resultado)

La llamada de función anterior buscaría la palabra clave "café" y asignaría el valor devuelto al resultado variable, que luego se imprime. La API de búsqueda personalizada devuelve un objeto JSON, por lo tanto, cualquier análisis adicional del objeto resultante requeriría un poco de conocimiento de JSON.

Esto se puede ver a partir de una muestra del resultado como se ve a continuación:

El objeto JSON devuelto anteriormente es muy similar al resultado de la búsqueda de Google:

Resumen

Rastrear a Google para obtener información no vale la pena el estrés. La API de búsqueda personalizada facilita la vida de todos, ya que la única dificultad es analizar el objeto JSON para la información necesaria. Como recordatorio, recuerde siempre mantener su identificación de motor de búsqueda personalizada y valores de clave de API privados.