Playwright 多上下文独立路由示例
为不同工作线程创建互相隔离的 BrowserContext,分别走不同国家住宅出口。
example.py
import { chromium } from 'playwright';
async function runMultiAgentTasks() {
const browser = await chromium.launch({ headless: true });
// 智能体 Worker 1: 通过美国独立住宅 IP 路由
const contextUS = await browser.newContext({
proxy: {
server: 'http://proxy.bytesflows.com:31112',
username: 'user-youraccount-country-us-session-agent01',
password: 'password'
}
});
// 智能体 Worker 2: 通过德国独立住宅 IP 路由
const contextDE = await browser.newContext({
proxy: {
server: 'http://proxy.bytesflows.com:31112',
username: 'user-youraccount-country-de-session-agent02',
password: 'password'
}
});
const pageUS = await contextUS.newPage();
const pageDE = await contextDE.newPage();
await Promise.all([
pageUS.goto('https://httpbin.org/ip'),
pageDE.goto('https://httpbin.org/ip')
]);
console.log('两个并发智能体均已通过物理完全隔离的住宅 IP 顺利完成任务。');
await browser.close();
}
runMultiAgentTasks();