Кукловод: Получение правильного элемента кадра в запросе страницы - PullRequest
0 голосов
/ 09 января 2020

У меня есть сценарий, в котором я пытаюсь отобразить сетевые запросы на элемент, который вызвал запрос.

const browser = await puppeteer.launch({ headless: false });
const page = await browser.newPage();

await page.setRequestInterception(true);

page.on("request", async request => {
  request.continue();
  const frame = request.frame();
  const frameContent = await frame.content();
  console.log("URL:", url, "\n\nFRAME:\n", frameContent);
})

await page.goto('https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html')

Выход

URL: https://docs.aws.amazon.com/awsjavascriptsdk/latest/css/style.css  

FRAME content:  
<html><head> 
    <meta charset="utf-8">
<title>
  Class: AWS.S3

    — AWS SDK for JavaScript

</title>

  <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8">

  <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8">

  <link rel="stylesheet" href="../css/highlight.github.css" type="text/css" media="screen" charset="utf-8">

<script type="text/javascript" charset="utf-8">
  pathId = "AWS.S3";
  relpath = '../';
</script></head></html>

Здесь frame.content() дает больший блок инициатора. В любом случае, я могу просто получить элемент, откуда возник запрос? В этом случае:

 <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8"> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...