- query
- La URL de búsqueda de Booking que envió, devuelta. Llena en las 90 filas. Las dos formas de destino que probamos funcionaron, así que es como distingue de qué búsqueda procede un bloque de filas.
- name
- El nombre del alojamiento tal como lo declara la página de resultados. Llena en las 90 filas: el campo más fiable de la exportación, y el que usar como clave en un informe legible por personas.
- stars
- Llena en 39 de 90 filas, y nunca en las dos ejecuciones en la primera moneda. No contiene un número de estrellas: en todas las filas tomó solo los valores 4, 8, 12, 16 o 20. Eso es compatible con cuatro veces una valoración de uno a cinco, y los establecimientos de los extremos encajan con esa lectura, pero no pudimos confirmarlo contra el sitio en vivo. Divida con cautela y valide antes de mostrarlo.
- rating
- La puntuación de los huéspedes sobre una escala de diez. Llena en 89 de 90 filas, entre 1,3 y 9,4 en lo que conservamos. La única excepción es un alojamiento que tampoco tenía número de reseñas ni etiqueta: una ficha sin nada puntuado todavía.
- review_label
- La palabra que el sitio pone junto a la puntuación. Llena en 65 de 90 filas, con los valores que cabría esperar, más uno que no es una palabra en absoluto sino el propio encabezado de columna del sitio, en cinco filas que tenían apenas un puñado de reseñas cada una. Filtre ese valor antes de agrupar por esta columna.
- reviews
- Sobre cuántas reseñas se construye la puntuación. Llena en 89 de 90 filas, desde una sola reseña hasta varios miles. Vale la pena leerla junto a
rating: la puntuación más baja de nuestros datos se apoya en tres reseñas. - location
- El barrio y la ciudad tal como los etiqueta la página de resultados. Llena en las 90 filas. Un nombre de distrito en vez de una dirección: en esta exportación no hay calle, código postal ni coordenada en ningún sitio.
- distance
- A qué distancia está el alojamiento del centro, como texto libre. Llena en las 90 filas, pero la unidad sigue a la ejecución, no al alojamiento: millas en dos de nuestras ejecuciones y kilómetros en la tercera. Analice la unidad, no la dé nunca por supuesta.
- room_type
- La habitación concreta a la que corresponde el precio citado. Llena en las 90 filas. Fíjese en que algunos valores terminan en una etiqueta suelta donde la configuración de camas se ha colado en el nombre de la habitación: un artefacto de captura que conviene recortar.
- occupancy
- La estancia que cubre el precio. Llena en las 90 filas, con el valor idéntico en todas ellas. Refleja el valor por defecto de la búsqueda y no algo de la ficha, así que no aporta información entre filas. Trátela como una constante que comprobar, no como un campo por el que agrupar.
- price
- La tarifa nocturna destacada, con símbolo de moneda. Llena en las 90 filas, y la moneda es la de la ejecución, no la del hotel. Dos de nuestras ejecuciones cotizaron una moneda y la tercera otra para la misma ciudad, así que limpie y convierta antes de comparar nada entre exportaciones.
- original_price
- El precio anterior tachado, donde la ficha muestra uno. Llena en 13 de 90 filas, todas en la primera moneda: la ejecución en la segunda moneda no llevaba ninguno. Once de las trece llevan además una etiqueta de promoción y dos no, así que puede existir un descuento sin que se le ponga nombre.
- taxes
- La línea de impuestos y tasas que aparece bajo la tarifa. Llena en 42 de 90 filas, que son todas las filas de una ejecución y ninguna de las otras dos. Es el caso más claro de una columna que depende de la presentación y no del alojamiento. Los valores ausentes llegan como un null de JSON, no como una cadena vacía.
- deal
- La etiqueta de promoción, donde se muestra una. Llena en 29 de 90 filas, con un conjunto pequeño de valores de campaña con nombre. Como en
taxes, un valor ausente es un null de JSON y no una cadena vacía. - url
- El enlace a la página del alojamiento. Llena en las 90 filas, y muy decorado: un identificador de afiliado, una etiqueta de seguimiento, un identificador de sesión, una marca de tiempo y los identificadores de bloque detrás de la tarifa citada, todo en la cadena de consulta. Las fechas de entrada y salida a las que se aplica el precio también están aquí, y en ningún otro sitio de la exportación. Recorte hasta la ruta para tener una clave estable; saque antes las fechas.
- image
- Una miniatura en el servidor de imágenes del sitio. Llena en las 90 filas, a un tamaño fijo pequeño. Bien para una vista de listado, demasiado pequeña como imagen de producto.
Por encima de cada nota de columna hay aquí dos hechos estructurales. El primero es que esta exportación no tiene columna de estado. Todos los demás servicios que ejecutamos escriben un indicador por fila que registra si la consulta tuvo éxito, fue rechazada o recibió el tipo de entrada equivocado, y así es como se habrían explicado dos de nuestras cinco ejecuciones. Devolvieron cero filas y nada más, así que el archivo no puede decirle si la búsqueda estaba vacía, si la página no cargó, o algo intermedio. Compruebe el número de filas en su propia canalización y trate un cero como un reintento. El segundo es que tres columnas dependen de la presentación y no del alojamiento. La ejecución servida en la segunda moneda llevaba una línea de impuestos en todas las filas y un valor de estrellas en casi todas, y no llevaba ningún precio anterior; las dos ejecuciones servidas en la primera moneda eran el espejo exacto. La unidad de distancia cambió con ellas. Eso significa que una comparación ingenua de dos exportaciones informará de que los hoteles ganaron y perdieron atributos cuando nada en ellos cambió, así que registre en qué moneda volvió cada ejecución y compare lo comparable. Todo lo demás es corriente: nueve columnas llegaron en las noventa filas, la puntuación y su recuento de reseñas en todas menos una, y los campos restantes son genuinamente opcionales tal como cabría esperar.