Las tarjetas de búsqueda se conectan con bandejas de páginas aceptadas, rechazadas y sin resolver.
Revise el destino antes de agregarlo a su cola.

Preparación de la primera revisión y contrato de la fuente

La compilación pública Google Search Scraper 1.0.15 admite Google, Bing, Brave y DuckDuckGo, pero solo Bing se acepta de manera afirmativa para este método aquí. La entrada pública actual de la tarea usa `queries ["AI agents", "small business automation"]`, `engines ["bing"]`, `maxResultsPerExecutedQuery 20`, `country "US"`, `language "en"`, `safeSearch true` e `includeSponsoredResults false`. Para esta prueba piloto, reemplace las listas completas de queries y de engines por una consulta prevista y `engines ["bing"]`, defina `maxResultsPerExecutedQuery 2`, el país previsto, el idioma y los mismos valores booleanos, y tenga en cuenta que no existe un ajuste de expansión ni una entrada pública de límite de páginas.

Campos nativos del resultado y resumen de salida

Cada fila de resultado del conjunto de datos contiene estos campos exactos: `runId`, `country`, `language`, `safeSearch`, `engine`, `executedQuery`, `page`, `rankOnPage`, `rank`, `title`, `canonicalUrl`, `resultDomain`, `snippet`, `isSponsored`, `advertiserDomain`, `observedAt` y `schemaVersion`. Una fila representa una observación en un motor, una consulta, una página y una posición. El campo `canonicalUrl` aporta una dirección candidata normalizada, no una etiqueta canónica HTML revisada ni el enlace original. Los snippets son texto de búsqueda, no el contenido obtenido de la página.

El resumen de la ejecución de salida informa: `queriesRequested`, `searchesCompiled`, `executionsPlanned`, `enginesSuccessful`, `enginesFailed`, `pagesAttempted`, `pagesParsed`, `resultsSaved`, `engineStatusCounts`, `engineResultCounts`, `queryResultCounts` y `stopReason`.

Referencia de la ejecución de control de Bing

Una ejecución de control exacta para `Python asyncio documentation` devolvió:

  • `queriesRequested`: 1
  • `searchesCompiled`: 1
  • `executionsPlanned`: 1
  • `enginesSuccessful`: 1
  • `enginesFailed`: 0
  • `pagesAttempted`: 1
  • `pagesParsed`: 1
  • `resultsSaved`: 2
  • `engineStatusCounts`: `{"bing": {"ok": 1}}`
  • `engineResultCounts`: `{"bing": 2}`
  • `queryResultCounts`: `{"Python asyncio documentation": 2}`
  • `stopReason`: `result_caps_reached`
  • Resultados devueltos: dos URL directas de `docs.python.org` en las posiciones 1 y 2.

Esto solo demuestra una muestra acotada de metadatos de Bing. No prueba todos los mercados, los operadores de búsqueda, las posiciones repetidas ni la obtención del destino. Las fuentes primarias incluyen el Google Search Scraper Actor y la Bing Search Results Task.

  1. Defina las páginas que necesita y su regla de inclusión antes de buscar. Bing es una fuente de descubrimiento admitida aquí. Use un tema neutro y un tope finito de filas, en lugar de prometer cientos de sitios válidos. El descubrimiento por búsqueda aporta candidatos, no una promesa de que cada página se pueda recolectar.
  2. Use consultas con una frase prevista, engines definido en bing y un límite pequeño de cantidad de filas. Revise la consulta ejecutada, el motor, las marcas de tiempo y la salida. La redacción de la consulta cambia su muestra de origen. Use palabras simples, salvo que usted mismo pruebe el significado en el motor de búsqueda.
  3. Conserve las filas de resultado devueltas antes de elegir los destinos. Conserve el título, la dirección candidata, el host de origen, la posición, la consulta, la hora y el motivo de detención de la ejecución de origen. Rechace una dirección rota o que no sea web según su regla. Deje sin resolver una redirección opaca o un destino poco claro. Un nombre de campo de normalización, como dirección canónica, no prueba la identidad real de la página original. Conserve la cadena devuelta sin cambios como evidencia de origen.
  4. Compare el host y la ruta de cada candidato con su propósito de recolección. Los títulos y los snippets de búsqueda pueden ser antiguos o incorrectos. Cuando haga falta, inspeccione el destino público mediante el proceso de recolección que usted utiliza como lector. Registre la URL final, el tipo de contenido y la evidencia de la página. No deduzca el contenido del producto solo a partir de un título. Las páginas de inicio de sesión y las páginas privadas siguen sin estar disponibles.
  5. Asigne cada destino como aceptado, rechazado o que necesita revisión, con un motivo claro. Aceptado significa que cumple su revisión en ese momento. No garantiza el éxito del rastreo, derechos completos ni datos de producto exactos. Mantenga fuera de su cola aceptada las revisiones de destino fallidas y las lagunas de origen.
  6. Combine solo las direcciones de destino duplicadas ya revisadas bajo una regla segura y conserve todas las referencias de resultado. Mantenga separados los registros de observación y los de destino. No borre rutas distintas ni parámetros de consulta que identifican páginas diferentes. El mismo host no significa la misma página. El mismo título no significa el mismo destino.
  7. Arme su cola pequeña con la dirección de destino, las referencias de origen, la evidencia de aceptación, la extracción deseada y el estado. Pase los destinos aceptados a un rastreador acotado y separado, hecho para esas páginas. El actor de búsqueda no ejecuta ese rastreo ni aporta el texto principal.
  8. Concilie sus observaciones recolectadas, los candidatos únicos revisados, los destinos aceptados, rechazados y sin resolver, y el estado del tope. Cero destinos aceptados puede ser una laguna normal, no una lista para completar con páginas adivinadas. Termine por revisar un destino antes de ampliar su presupuesto de descubrimiento.

Ejemplo resuelto de ficción original

Todos los dominios, las palabras y los conteos de esta sección son ficción original. Siete observaciones devueltas apuntan a seis direcciones candidatas distintas bajo una regla exacta de destino. Dos observaciones comparten la dirección `https://garden.example/products`. Las otras cinco observaciones apuntan a una página de producto, una guía de blog, una redirección opaca, una página de inicio de sesión y una dirección no válida.

1. Siete observaciones de resultado

Ejemplo resuelto de ficción original
ID de observaciónConsultaPosiciónObservado enURL devueltaReferencia de origen
obs-1herramientas de jardín12026-10-13T06:20:14Zhttps://garden.example/productsMotor Bing, página 1
obs-2plantas de interior22026-10-13T06:20:15Zhttps://garden.example/productsMotor Bing, página 1
obs-3herramientas de jardín32026-10-13T06:20:16Zhttps://garden.example/items/shearsMotor Bing, página 1
obs-4plantas de interior42026-10-13T06:20:17Zhttps://blog.example/guideMotor Bing, página 1
obs-5herramientas de jardín52026-10-13T06:20:18Zhttps://redirect.example/outMotor Bing, página 1
obs-6plantas de interior62026-10-13T06:20:19Zhttps://account.example/loginMotor Bing, página 1
obs-7herramientas de jardín72026-10-13T06:20:20Zftp://invalid.example/fileMotor Bing, página 1

2. Seis candidatos de destino únicos y sus estados

Ejemplo resuelto de ficción original
URL candidata de destinoResultado de la revisión del destinoEstado de relevanciaMotivo / evidencia
`https://garden.example/products`HTTP 200 válidoaccepted_targetEl índice compartido de productos coincide con el alcance de la recolección.
`https://garden.example/items/shears`HTTP 200 válidoaccepted_targetLa página de un producto específico coincide con el alcance de la recolección.
`https://blog.example/guide`HTTP 200 válidorejected_targetLa guía de blog no es pertinente para la recolección de productos.
`https://redirect.example/out`No disponible / opacaneeds_reviewLa redirección opaca no se puede verificar de forma directa.
`https://account.example/login`Inicio de sesión obligatorioneeds_reviewEl destino exige autenticación; no está disponible.
`ftp://invalid.example/file`Esquema que no es HTTPrejected_targetUna dirección mal formada o que no es http infringe la regla de recolección.

3. Dos destinos aceptados de la cola

Ejemplo resuelto de ficción original
Dirección de destinoReferencias de origenEvidencia de la revisiónExtracción siguiente deseadaEstado del destino
`https://garden.example/products`obs-1, obs-2Estado HTTP 200 verificado; coincide con los criterios del índice de productosExtraer la lista de artículos de la categoríaaccepted
`https://garden.example/items/shears`obs-3Estado HTTP 200 verificado; coincide con los criterios de un solo productoExtraer los detalles del producto y el precioaccepted

La conciliación muestra seis candidatos que dan dos destinos aceptados, dos destinos rechazados y dos destinos sin resolver. Las dos observaciones del índice de productos siguen unidas a un destino de la cola, con las referencias de consulta, posición y hora de ambas. No trate siete observaciones como siete sitios de rastreo ni descarte la referencia duplicada. Si el índice de productos falla cuando el rastreador separado se ejecuta después, registre esa falla; una aceptación anterior no garantiza la extracción.

Fuentes y lecturas adicionales

Por Chronometrica · Actualizado

Volver arriba ↑