playwright获取网页上已发生的请求
时间: 2024-11-25 19:15:30 浏览: 7
Playwright为页面中的某个请求单独设置代理
Playwright是一个强大的Node.js库,用于自动化Web浏览器的行为,包括发送HTTP请求和处理页面交互。如果你想获取网页上已经发生的请求,Playwright提供了API让你能够访问浏览器的历史记录。
`playwright.chromium BrowserContext#requestFilter` 或 `playwright.firefox BrowserContext#requestFilter` 可以用来设置一个过滤器,当有请求发生时,这个过滤器会被触发。你可以通过监听`response`事件来获取响应信息,例如URL、HTTP方法、状态码等。
示例代码:
```javascript
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch();
const context = await browser.newContext();
// 创建请求过滤器
context.on('request', async request => {
console.log(`Received request for URL: ${request.url}`);
// 如果你想保存所有请求,可以在这里进行处理
// 等待请求完成并打印响应数据
const response = await request.waitUntil('response');
console.log(`Response status: ${response.status()}`);
});
// 打开网页
const page = await context.newPage();
await page.goto('https://example.com');
// 关闭浏览器和上下文
await browser.close();
})();
```
阅读全文