Как получить доступ к контенту теневого дома с помощью cheerio - PullRequest
1 голос
/ 27 марта 2020

При выполнении запроса GET с помощью ax ios я получаю следующее HTML тело:

request:
   axios.get(URL)
        .then((response) => result = response.data)

body of 'result':
   <body>
       <custom-component></custom-component>
   </body>

При проверке от custom-component до Chrome я вижу, что есть много детей который я хотел бы получить доступ.

Например:

<custom-component>
   <div class="header-container">...</div>
</custom-component>

Как правило, с помощью cheerio я могу получить доступ к этому контенту с помощью:

const $ = await cheerio.load(result);
$('.header-container')

Однако, поскольку это теневой компонент, код выше не работает.

Есть ли обходной путь к этому?

1 Ответ

0 голосов
/ 27 марта 2020

Вы не можете. Вы должны использовать библиотеку puppeteer, чтобы получить что-то, созданное во время выполнения. https://github.com/puppeteer/puppeteer/issues/858#issuecomment -441429302

...