Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

296
Visualizações
No se pueden leer las propiedades de Nodejs indefinido (leyendo 'statusCode') usando cheerio

Estoy tratando de obtener el título de una página web para esta solicitud divertida y saludos. Estoy enfrentando este problema.

¿Alguien puede ayudarme a identificar el error que he hecho en mi código?

aquí está mi código

 var request = require("request"); var cheerio = require("cheerio"); jsonData = [ { Domain: "bar-n-ranch.com" }, { Domain: "barcelona-enabled.com" }, { Domain: "barefootamelia.com" }, { Domain: "barmranch.com" }, { Domain: "barnstablepatriot.com" }, { Domain: "barrieapartmentrentalsonline.com" }, { Domain: "basquehomes.com" }, { Domain: "bassmaster.com" }, { Domain: "basswoodresort.com" }, ]; function fetchTitle(url, onComplete = null) { request(url, function (error, response, body) { var output = url; // default to URL if (!error && response.statusCode === 200) { var $ = cheerio.load(body); console.log(`URL = ${url}`); var title = $("head > title").text().trim(); console.log(`Title = ${title}`); output = `[${title}] (${url})`; } else { console.log(`Error = ${error}, code = ${response.statusCode}`); } console.log(`output = ${output} \n\n`); if (onComplete) onComplete(output); }); } jsonData.forEach(function (table) { var tableName = table.Domain; var URL = "http://" + tableName; fetchTitle(URL); });

cuando paso un valor como fetchtitle("https://www.googlecom") funciona, pero recibo un error cuando intento hacer un bucle de datos JSON

seguimiento de la pila de errores ^

 TypeError: Cannot read properties of undefined (reading 'statusCode') at Request._callback (C:\1\naveen\Project\Final\scrap example\test.js:29:56) at self.callback (C:\1\naveen\Project\Final\scrap example\node_modules\request\request.js:185:22) at Request.emit (node:events:390:28) at Request.onRequestError (C:\1\naveen\Project\Final\scrap example\node_modules\request\request.js:877:8) at ClientRequest.emit (node:events:390:28) at Socket.socketErrorListener (node:_http_client:447:9) at Socket.emit (node:events:390:28) at emitErrorNT (node:internal/streams/destroy:157:8) at emitErrorCloseNT (node:internal/streams/destroy:122:3)

Muchas gracias por adelantado

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

A veces, cuando realiza un bucle a través de varias solicitudes en el servidor, hay posibilidades de que el socket se cuelgue (ocupado en alguna otra solicitud) o el servidor no puede poner en cola la solicitud, lo que puede dar como resultado que no se responda a la solicitud. La mejor solución para esto es que primero debe verificar el objeto de respuesta de la solicitud antes de acceder a las propiedades en él.

 if (!error && (response && response.statusCode) === 200) { var $ = cheerio.load(body); console.log(`URL = ${url}`); var title = $("head > title").text().trim(); console.log(`Title = ${title}`); output = `[${title}] (${url})`; } else { console.log(`Error = ${error}, code = ${response && response.statusCode}`); }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda