Soy bastante nuevo en la codificación y no entiendo por qué mi código no funciona. Se supone que "Dominus Empyreus" , aunque solo genera []
Aquí está mi código actual:
const axios = require('axios'); const cheerio = require('cheerio'); const extractLinks = $ => [ ...new Set( $('.border-bottom item-name-container') // Select pagination links .toArray() // Convert cheerio object to array ), ]; axios.get('https://www.roblox.com/catalog/21070012/Dominus-Empyreus').then(({ data }) => { const $ = cheerio.load(data); // Initialize cheerio const stuff = extractLinks($); console.log(stuff); // ['Dominus Empyreus'] });¡Cualquier ayuda es apreciada! Gracias.
Este es el elemento que está tratando de seleccionar.
<div class="border-bottom item-name-container">
Has escrito:
.border-bottom item-name-container
Que consiste en:
class="border-bottom" )<item-name-container> )Lo que necesitas es:
class="border-bottom" )class="item-name-container" )Tal:
.border-bottom.item-name-containerUna solución alternativa es usar la ruta completa del selector directamente al elemento que desea extraer de una página web como tal:
const axios = require('axios'); const cheerio = require('cheerio'); const extractLinks = $ => [ ...new Set( $("#item-container > div.remove-panel.section-content.top-section > div.border-bottom.item-name-container > h1") // Select pagination links .toArray() // Convert cheerio object to array ), ]; axios.get('https://www.roblox.com/catalog/21070012/Dominus-Empyreus').then(({ data }) => { const $ = cheerio.load(data); // Initialize cheerio const stuff = extractLinks($); console.log(stuff[0].children[0].data); // ['Dominus Empyreus'] });Una forma rápida y sencilla de obtener una ruta completa del selector es usar la consola del desarrollador F12 en su navegador, hacer clic con el botón derecho en el elemento -> Copiar -> Copiar selector.

En este caso, el selector para este elemento <h1> es:
#item-container > div.remove-panel.section-content.top-section > div.border-bottom.item-name-container > h1Lo único que debe tener en cuenta es que esta solución solo funcionará si la ruta del selector es exactamente la misma en cada página que desea raspar.