如何阻止木偶操纵者跟随重定向

How to stop puppeteer follow redirects

目前 puppeteer 的默认行为似乎是遵循重定向和 return 链末端的 DOM。

如何让 .goto() 方法在第一次重定向发生后停止,并在我调用 page.content( ) 方法?

在撰写本文时,这似乎是不可能的(至少在 Puppeteer 提供的高级 API 中不可能)。查看 goto here.

的文档

如果识别出请求链,您可以启用请求拦截并中止其他请求:

await page.setRequestInterception(true);

page.on('request', request => {
  if (request.isNavigationRequest() && request.redirectChain().length !== 0) {
    request.abort();
  } else {
    request.continue();
  }
});

await page.goto('https://www.example.com/');