Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

315
Vistas
Al usar Node Crawler, una vez que el rastreo haya terminado y no haya más enlaces. ¿Cómo disparo el código para generar resultados?

esta es la primera vez que publico aquí, así que por favor sean amables :)

Estoy usando un rastreador de nodos (que se encuentra aquí: https://www.npmjs.com/package/crawler ) para rastrear un sitio y encontrar todos los enlaces internos. El script se ejecuta y envía los enlaces a la consola. Lo que estoy tratando de hacer es detectar una vez que ha terminado y no encuentra más enlaces, entonces quiero hacer cosas como generar todos los enlaces, tal vez agregarlos al archivo de texto o a la hoja de Google. He intentado asíncrono pero estoy un poco fuera de mi alcance. El código es el siguiente

 const Crawler = require("crawler"); let obselete = []; // Array of what was crawled already let c = new Crawler(); const crawlAllUrls = async function (url) { c.queue({ uri: url, callback: function (err, res, done) { if (err) throw err; let $ = res.$; try { let urls = $("a"); // all urls Object.keys(urls).forEach((item) => { if (urls[item].type === 'tag') { let href = urls[item].attribs.href; if (href && !obselete.includes(href)) { href = href.trim(); console.log(`href is ${href}`); obselete.push(href); // Slow down the setTimeout(function() { href.startsWith(url) ? crawlAllUrls(href) : crawlAllUrls(`${url}${href}`) }, 5000) } } }); } catch (e) { console.error(`Encountered an error crawling ${url}. Aborting crawl.`); done() } done(); } }) } c.on('drain',function(){ // For example, release a connection to database. console.log("Done"); }); // Start function const start = async function(a, b) { const result = await crawlAllUrls('http://www.five12.co.uk/'); } start();
about 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda