首页 > 解决方案 > 是否可以在 Selenium 或 Puppeteer 等自动化软件中读取传入的 HTTP 请求?

问题描述

我想在使用 Selenium(或任何其他自动化软件)时读取所有传入的 HTTP 请求,我想在访问网站时从所有这些请求(这只是一个示例)中读取数据(标头、响应):

在此处输入图像描述

有什么办法可以做到吗?在那种情况下,怎么办?

标签: javascriptnode.jsautomationpuppeteer

解决方案


在 puppeteer 中,您可以像这样访问请求/响应标头:

page.on('request', req => {
    let headers = req.headers();
    console.log(headers);
});
page.on('response', resp => {
    let headers = resp.headers();
    console.log(headers);
});

对于 selenium,您可以使用mitmproxybrowsermob-proxy等代理,或者如果您使用的是 python,则可以使用selenium-wire


推荐阅读