Mi pregunta es similar a esta sobre Python , pero, a diferencia de ella, la mía es sobre Javascript.
</head> etiqueta de cierre.</head> , cerrar la transmisión y la conexión? ¿Si es así, cómo?urllib.request.Request.read() tiene un argumento de "tamaño" en número de bytes, pero ReadableStreamDefaultReader.read() de JS no. ¿Qué debo usar en JS entonces como alternativa? Intente usar la búsqueda de nodo-fetch fetch(url, {size: 200})
No sé si existe un método en el que pueda obtener solo el elemento principal de una respuesta, pero puede cargar todo el documento HTML y luego analizar el encabezado aunque no sea tan eficiente en comparación con otros métodos. . Hice una aplicación básica usando axios y cheerio para obtener el elemento principal de una serie de URL. Espero que esto pueda ayudar a alguien.
const axios = require("axios") const cheerio = require("cheerio") const URLs = ["https://stackoverflow.com/questions/73191546/get-only-html-head-from-url"] for (let i = 0; i < URLs.length; i++) { axios.get(URLs[i]) .then(html => { const document = html.data // get the start index and the end index of the head const startHead = document.indexOf("<head>") const endHead = document.indexOf("</head>") + 7 //get the head as a string const head = document.slice(startHead, endHead) // load cheerio const $ = cheerio.load(head) // get the title from the head which is loaded into cheerio console.log($("title").html()) }) .catch(e => console.log(e)) }