Volver al blog
Guías
Mihnea-Octavian ManolacheLast updated on Mar 31, 202610 min read

Guía de inicio rápido de la API de web scraping

Guía de inicio rápido de la API de web scraping

WebScrapingAPI ofrece un conjunto de soluciones de extracción de datos web. Nuestro producto principal es un extractor web de uso general, diseñado para recopilar datos en tiempo real de cualquier sitio web. Como descubrirás a lo largo de esta guía, la herramienta cuenta con numerosas funciones que le permiten pasar desapercibida ante los sistemas antibots. Dada su amplia gama de funciones, esta guía está diseñada para ayudarte a dar tus primeros pasos con WebScrapingAPI. Estos son algunos de los temas que trataremos:

  • Cómo trabajar con el panel de control
  • Comprender los parámetros y funciones de la API
  • Envío de solicitudes básicas a la API
  • Configuración de un rastreador web complejo utilizando los SDK

Por qué registrarse en la API de Web Scraping

Hay innumerables razones por las que deberías utilizar Web Scraping API en lugar de un scraper convencional. Sin embargo, nos basamos en los comentarios de los usuarios a la hora de decidir qué nos convierte en la mejor opción. Y estas son algunas de las razones por las que nuestros clientes nos eligen:

  • Asistencia profesional: nuestro servicio de asistencia está a cargo de ingenieros de software reales que trabajan directamente con la API. Así que, cuando nos pidas ayuda, nos aseguraremos de que recibas las mejores respuestas posibles. Además, si te encuentras con algún problema, es muy probable que el ingeniero que te atienda pueda solucionarlo en muy poco tiempo e implementar la solución en producción.
  • Facilidad de uso: crear un rastreador web puede ser complicado. Hay que tener en cuenta diversos proxies, evasiones, captchas, navegadores, etc. Con Web Scraping API, obtienes todo eso (y mucho más) con solo «hacer clic en un botón».
  • Escalabilidad: cuando creamos nuestro producto, una de nuestras principales prioridades fue garantizar que ofreciéramos resultados independientemente del número total de solicitudes que recibiéramos. Al registrarte en la API de Web Scraping, te registras en toda nuestra infraestructura. Y eso incluye proxies, navegadores, clientes HTTP y mucho más.

Registrarse para obtener un scraper gratuito basado en la nube

Para registrarte en la API de Web Scraping, solo necesitas una dirección de correo electrónico válida. Además, todos los usuarios tienen derecho a una prueba gratuita de 7 días con acceso completo a las funciones de la API, limitada a 1000 créditos de API. Tras estos 7 días, seguirás teniendo acceso a un nivel gratuito, que te ofrece 1000 créditos API al mes, pero con funciones API limitadas. Si deseas seguir utilizando la versión completa de nuestro scraper web basado en la nube, te ofrecemos planes de precios flexibles. Puedes consultar la página de precios para obtener información actualizada sobre los precios. Como punto fuerte, ofrecemos:

  • un plan Starter, con hasta 100 000 créditos API y 20 llamadas simultáneas
  • un plan Grow, con hasta 1 000 000 de créditos API y 50 llamadas simultáneas
  • un plan Business, con hasta 3 000 000 de créditos API y 100 llamadas simultáneas
  • un plan Pro, con hasta 10 000 000 de créditos API y 500 llamadas simultáneas
  • un plan Enterprise a medida que se discutirá en función de tus necesidades particulares

Para empezar, visita nuestra página de registro aquí y crea una cuenta gratuita.

Comprender el panel de control

Registrarse en nuestro panel de control no le da acceso implícito a nuestros productos. Como verá, la barra lateral izquierda muestra varias opciones relacionadas con nuestros productos. Dado que esta guía se refiere al rastreador web de uso general, para crear una suscripción a este servicio, vaya a «Web Scraping API» y haga clic en el botón «Obtener prueba gratuita». Una vez creada la suscripción, se le proporcionará una clave API. Asegúrate de guardarla en un lugar seguro, ya que será tu identificador único en nuestros sistemas. A continuación, también podrás acceder a la página de estadísticas y al Playground.

Conceptos básicos de nuestra API de scraper web

Hay tres formas de interactuar con nuestro web scraper, dos de las cuales son, digamos, «programáticas» y una que es más «accesible para principiantes». Las dos primeras implican acceder a la API a través de clientes HTTP o de nuestros SDK. La tercera consiste en utilizar el Playground que se proporciona dentro del Dashboard. Y las veremos en breve, pero antes de eso, es importante comprender cómo funciona la API. Solo así podrás aprovechar todo el potencial de la API de Web Scraping. Así que empecemos por lo básico:

Autenticación de solicitudes

La forma en que autenticamos las solicitudes procedentes de usuarios registrados es habilitando el parámetro de URL `api_key`. La clave API única está vinculada a tu cuenta y contiene información sobre permisos, uso, etc.

Ten en cuenta que cada producto al que te suscribas tiene asociada una clave API única. Por ejemplo, no puedes utilizar la clave API de tu web scraper de uso general en la API SERP ni viceversa.

Dicho esto, para extraer datos de una URL como usuario autenticado, tendrás que acceder al siguiente recurso:

https://api.webscrapingapi.com/v1?api_key=<YOUR_UNIQUE_API_KEY>

Parámetros de la API

Dentro de nuestra API, los parámetros de consulta se utilizan para personalizar el rastreador según tus necesidades. Comprender cómo funciona cada parámetro nos permitirá aprovechar todo el potencial de nuestra API de rastreo web. Mantenemos una documentación actualizada de los parámetros de la API aquí. Sin embargo, también vamos a profundizar en ellos aquí, para comprender mejor cómo funcionan los parámetros de consulta con la API de scraping web. Dicho esto, hay tres tipos de parámetros: obligatorios, predeterminados y opcionales. Los obligatorios son bastante sencillos:

  • El parámetro `api_key` que hemos comentado anteriormente
  • El parámetro `url`, que representa la URL que quieres rastrear

Ten en cuenta que el valor del parámetro `url` debe ser una URL válida, no un nombre de dominio, y lo ideal es que esté codificada como URL (es decir, https%3A%2F%2Fwebscrapingapi.com)

En cuanto a los parámetros predeterminados, hemos utilizado datos históricos para aumentar la tasa de éxito de nuestra API (e implícitamente la de su proyecto). Los datos internos muestran que la mejor configuración para el web scraping es utilizar un navegador web real junto con una dirección IP residencial. Por lo tanto, los parámetros predeterminados de nuestra API son:

  • `render_js=1`: para iniciar un navegador real (no un cliente HTTP básico)
  • `proxy_type=residential`: para acceder al sitio de destino a través de una dirección IP residencial (solo está habilitado si tu plan actual admite proxies residenciales)

Por supuesto, también puedes sobrescribir el valor de estos parámetros, aunque no lo recomendamos. El scraping con un cliente HTTP básico y proxies de centro de datos suele provocar que el sitio web de destino detecte la actividad de scraping y bloquee el acceso.

A continuación, hablaremos de los parámetros opcionales. Dado que hemos documentado todos los parámetros en nuestra documentación, por ahora solo vamos a tratar los más utilizados:

  • Parámetro: render_js Descripción: Al habilitar este parámetro, accederás a la URL de destino a través de un navegador real. Tiene la ventaja de renderizar archivos JavaScript. Es una excelente opción para extraer datos de sitios con mucho JavaScript (como los creados con ReactJS, por ejemplo). Documentación: [aquí ]
  • Parámetro: proxy_type Descripción: Se utiliza para acceder a la URL de destino a través de una dirección IP residencial o de un centro de datos. Documentación: [aquí ]
  • Parámetro: stealth_mode Descripción: El scraping web no es una actividad ilegal. Sin embargo, algunos sitios web tienden a bloquear el acceso a software automatizado (incluidos los scrapers web). Nuestro equipo ha diseñado un conjunto de herramientas que hace casi imposible que los sistemas antibots detecten nuestro scraper web. Puede habilitar estas funciones utilizando el parámetro stealth_mode=1. Documentación: [aquí ]
  • Parámetro: country Descripción: Se utiliza para acceder a su objetivo desde una ubicación geográfica específica. Consulte los países compatibles [aquí]. Documentación: [aquí ]
  • Parámetro: timeout Descripción: Por defecto, cancelamos una solicitud (y no cobramos si falla) tras 10 segundos. Con ciertos objetivos, es posible que desee aumentar este valor hasta 60 segundos. Documentación: [aquí ]
  • Parámetro: device Descripción: Puedes utilizarlo para que tu rastreador parezca un «ordenador de sobremesa», una «tableta» o un «móvil». Documentación: [aquí ]
  • Parámetro: wait_until Descripción: En términos sencillos, una vez que llega a la URL de destino, congela el rastreador hasta que se produzca un evento determinado. El concepto que seguimos se describe mejor [aquí]. Documentación: [aquí ]
  • Parámetro: wait_for Descripción: Este parámetro congela el scraper durante un tiempo determinado (que no puede superar los 60 segundos). Documentación: [aquí ]
  • Parámetro: wait_for_css Descripción: Congela el rastreador hasta que un determinado selector CSS (es decir, clase o ID) sea visible en la página. Documentación: [aquí ]
  • Parámetro: session Descripción: Permite utilizar el mismo proxy (dirección IP) en varias solicitudes. Documentación: [aquí ]

Códigos de respuesta

Uno de los aspectos más importantes que debes saber sobre los códigos de respuesta es que solo cobramos por las respuestas exitosas. Por lo tanto, si tu solicitud da como resultado cualquier cosa que no sea el código de estado 200, no se te cobrará. Aparte de eso, los errores de la API están documentados aquí y, como verás, siguen los códigos de estado HTTP habituales. Por nombrar algunos:

  • 400: Solicitud incorrecta - Por ejemplo, cuando envías parámetros no válidos
  • 401: Sin autorización - Cuando no se envía una `api_key` o la clave API no es válida
  • 422: Entidad no procesable: cuando la API no puede completar la solicitud (como, por ejemplo, cuando el selector CSS que esperabas no es visible en la página)

Interacción con la API de Web Scraper

Como se ha dicho, hay principalmente tres formas de interactuar con la API del web scraper. En primer lugar, el uso de los SDK o el acceso a la API a través de clientes HTTP depende en mayor medida del lenguaje (o la tecnología) y requiere ciertos conocimientos técnicos. En nuestro panel de control, dentro del API Playground, hay disponible una interfaz más adecuada para principiantes. Esta herramienta te permitirá experimentar con nuestro web scraper, probarlo y familiarizarte con el uso de los parámetros para tu beneficio, antes de pasar a implementaciones programáticas o funciones avanzadas. Algunos aspectos clave del playground son:

  • Corrige automáticamente las incompatibilidades entre parámetros (por ejemplo, `stealth_mode=1` es incompatible con `render_js=0`)
  • Proporciona ejemplos de código reales para varios lenguajes de programación que puedes utilizar en tu proyecto
  • Muestra los parámetros recomendados, basados en nuestras pruebas internas y en datos históricos de solicitudes anteriores, para que puedas aumentar la tasa de éxito de tu proyecto

Funciones avanzadas de web scraping

Para usuarios avanzados, nuestra API cuenta con diversas funciones que la hacen personalizable y lista para cualquier proyecto de scraping. Una vez más, nuestra documentación oficial es una buena fuente de información. Sin embargo, estos son algunos de los aspectos que debemos destacar:

POST, PUT y PATCH

Con la API de web scraping, no estás limitado a utilizar únicamente solicitudes GET. Si tu proyecto de scraping necesita crear, sustituir o actualizar recursos, puedes utilizar nuestras solicitudes POST, PUT o PATCH. Un aspecto clave de estas solicitudes es que también puedes utilizar `render_js=1`, lo que significa un navegador web real, no un simple cliente HTTP. Un ejemplo de solicitud POST es:

curl --request POST --url "https://api.webscrapingapi.com/v1?api_key=<YOUR_API_KEY>&url=https%3A%2F%2Fhttpbin.org%2Fpost" --data "{
  "foo": "bar"
}"

Modo proxy

También puedes utilizar nuestra API como proxy para extraer datos de la URL de destino. Para acceder a la API como proxy, debes tener en cuenta lo siguiente:

  • El nombre de usuario para autenticarse con el proxy siempre se establece en `webscrapingapi`, seguido de los parámetros que desees habilitar, separados por puntos.
  • La contraseña es siempre tu clave API personal

Aquí tienes un ejemplo de URL que puedes utilizar para acceder al rastreador web a través de nuestro modo proxy:

https://webscrapingapi.<parameter_1.parameter_2.parameter_n>:<YOUR_API_KEY>@proxy.webscrapingapi.com:8000

Conclusiones

La API de web scraping ofrece un conjunto de potentes herramientas de scraping respaldadas por un equipo de ingenieros y listas para usar. Incluye docenas de funciones que la convierten en una solución de web scraping personalizable. Además, puedes integrar el rastreador web en la nube de uso general con cualquier lenguaje de programación o tecnología, ya que devuelve HTML sin procesar o JSON analizados. Por otra parte, nuestra extensa documentación y nuestros repositorios públicos de GitHub te ayudarán a poner en marcha tu proyecto en un abrir y cerrar de ojos.

Esperamos que esta guía sea un buen punto de partida para ti y ten en cuenta que nuestro servicio de asistencia está siempre a tu disposición si tienes alguna pregunta. ¡Esperamos ser tu socio en el camino hacia el éxito!

Acerca del autor
Mihnea-Octavian Manolache, Desarrollador Full Stack @ WebScrapingAPI
Mihnea-Octavian ManolacheDesarrollador Full Stack

Mihnea-Octavian Manolache es ingeniero Full Stack y DevOps en WebScrapingAPI, donde se encarga de desarrollar funciones para los productos y de mantener la infraestructura que garantiza el buen funcionamiento de la plataforma.

Empieza a crear

¿Estás listo para ampliar tu recopilación de datos?

Únete a más de 2000 empresas que utilizan WebScrapingAPI para extraer datos de la web a escala empresarial sin ningún gasto de infraestructura.