Я полный новичок в javascript
и puppeteer
, и я пытаюсь получить первые 151 описание покемонов с веб-сайта Bulapedia https://en.wikipedia.org/wiki/List_of_generation_I_Pok%C3%A9mon
На картинке ниже я копирую XPath синего отмеченного элемента один экземпляр покемона, и это текст, который я хочу показать
введите описание изображения здесь
Используя приведенный ниже код, я могу захватить элемент и показать текст в значении json
, но я могу сделать это вручную только для одного покемона за раз. Я хочу использовать puppeteer
для перебора каждой страницы и делать это для первых 151 покемона. Мой код:
const puppeteer = require('puppeteer');
async function getDesc(url){
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(url);
//xpath of the selected text above in the pic
const [el] = await page.$x('//*[@id="mw-content-text"]/table[5]/tbody/tr[1]/td/table/tbody/tr[2]/td/table/tbody/tr[1]/td');
const text = await el.getProperty('textContent');
srcTxt = await text.jsonValue();
console.log({srcTxt});
browser.close();
}
//give url for a specific pokemon as input
getDesc('https://bulbapedia.bulbagarden.net/wiki/Bulbasaur_(Pok%C3%A9mon)');
Я считаю, что решение для l oop, которое выполняет итерацию по каждому URL-адресу для каждого экземпляра покемона, является решением. Однако я не знаю, как реализовать это с помощью кукловода, и был бы признателен за вашу помощь. Заранее спасибо.