Ваша проблема в том, что при вызове с axios
вы получите только HTML, предоставленный с сервера
, это означает, что любые асинхронные вызовы, которые выбирают продукты из других частей их системы, никогда не будут в этом запросе
простой вывод данных, полученных в новый файл, покажет этот факт
const fs = require('fs')
...
fs.writeFileSync('./data.html', res.data)
открытие нового файла data.html
приведет только к выводу 10
в качестве числа из product-title-link
найдено
Для этого вы не можете использовать axios
, кроме библиотеки веб-скребков, например, Puppeteer как и в этом случае, вы можете подождать, пока все продукты будут загружены, прежде чем пересечь DOM в данный момент времени.