@pyrokine/mcp-chrome 1.7.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -31
- package/dist/anti-detection/behavior.d.ts.map +1 -1
- package/dist/anti-detection/behavior.js.map +1 -1
- package/dist/anti-detection/index.d.ts +1 -1
- package/dist/anti-detection/index.d.ts.map +1 -1
- package/dist/anti-detection/index.js +1 -1
- package/dist/anti-detection/index.js.map +1 -1
- package/dist/anti-detection/injection.d.ts +6 -2
- package/dist/anti-detection/injection.d.ts.map +1 -1
- package/dist/anti-detection/injection.js +32 -79
- package/dist/anti-detection/injection.js.map +1 -1
- package/dist/cdp/client.d.ts +2 -2
- package/dist/cdp/client.d.ts.map +1 -1
- package/dist/cdp/client.js +8 -10
- package/dist/cdp/client.js.map +1 -1
- package/dist/cdp/index.d.ts.map +1 -1
- package/dist/cdp/index.js.map +1 -1
- package/dist/cdp/launcher.d.ts.map +1 -1
- package/dist/cdp/launcher.js +40 -13
- package/dist/cdp/launcher.js.map +1 -1
- package/dist/core/auto-wait.d.ts +2 -2
- package/dist/core/auto-wait.d.ts.map +1 -1
- package/dist/core/auto-wait.js +2 -2
- package/dist/core/auto-wait.js.map +1 -1
- package/dist/core/browser-driver.d.ts +307 -0
- package/dist/core/browser-driver.d.ts.map +1 -0
- package/dist/core/browser-driver.js +21 -0
- package/dist/core/browser-driver.js.map +1 -0
- package/dist/core/error-sanitizer.d.ts +25 -0
- package/dist/core/error-sanitizer.d.ts.map +1 -0
- package/dist/core/error-sanitizer.js +66 -0
- package/dist/core/error-sanitizer.js.map +1 -0
- package/dist/core/errors.d.ts +10 -1
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +17 -4
- package/dist/core/errors.js.map +1 -1
- package/dist/core/extension-errors.d.ts +20 -0
- package/dist/core/extension-errors.d.ts.map +1 -0
- package/dist/core/extension-errors.js +40 -0
- package/dist/core/extension-errors.js.map +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/locator.d.ts +2 -2
- package/dist/core/locator.d.ts.map +1 -1
- package/dist/core/locator.js +25 -65
- package/dist/core/locator.js.map +1 -1
- package/dist/core/retry.d.ts +2 -2
- package/dist/core/retry.d.ts.map +1 -1
- package/dist/core/retry.js +2 -2
- package/dist/core/retry.js.map +1 -1
- package/dist/core/session.d.ts +153 -46
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +672 -177
- package/dist/core/session.js.map +1 -1
- package/dist/core/types.d.ts +9 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +13 -6
- package/dist/core/types.js.map +1 -1
- package/dist/core/unified-session.d.ts +46 -81
- package/dist/core/unified-session.d.ts.map +1 -1
- package/dist/core/unified-session.js +338 -635
- package/dist/core/unified-session.js.map +1 -1
- package/dist/core/utils.d.ts +7 -0
- package/dist/core/utils.d.ts.map +1 -0
- package/dist/core/utils.js +33 -0
- package/dist/core/utils.js.map +1 -0
- package/dist/extension/bridge.d.ts +69 -50
- package/dist/extension/bridge.d.ts.map +1 -1
- package/dist/extension/bridge.js +176 -77
- package/dist/extension/bridge.js.map +1 -1
- package/dist/extension/http-server.d.ts +6 -4
- package/dist/extension/http-server.d.ts.map +1 -1
- package/dist/extension/http-server.js +45 -31
- package/dist/extension/http-server.js.map +1 -1
- package/dist/extension/index.d.ts.map +1 -1
- package/dist/extension/index.js.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/tools/browse.d.ts.map +1 -1
- package/dist/tools/browse.js +32 -34
- package/dist/tools/browse.js.map +1 -1
- package/dist/tools/cookies.d.ts.map +1 -1
- package/dist/tools/cookies.js +38 -16
- package/dist/tools/cookies.js.map +1 -1
- package/dist/tools/evaluate.d.ts.map +1 -1
- package/dist/tools/evaluate.js +54 -23
- package/dist/tools/evaluate.js.map +1 -1
- package/dist/tools/extract.d.ts.map +1 -1
- package/dist/tools/extract.js +221 -153
- package/dist/tools/extract.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/input.d.ts.map +1 -1
- package/dist/tools/input.js +271 -90
- package/dist/tools/input.js.map +1 -1
- package/dist/tools/logs.d.ts.map +1 -1
- package/dist/tools/logs.js +31 -17
- package/dist/tools/logs.js.map +1 -1
- package/dist/tools/manage.d.ts.map +1 -1
- package/dist/tools/manage.js +25 -28
- package/dist/tools/manage.js.map +1 -1
- package/dist/tools/schema.d.ts +1 -1
- package/dist/tools/schema.d.ts.map +1 -1
- package/dist/tools/schema.js +31 -55
- package/dist/tools/schema.js.map +1 -1
- package/dist/tools/wait.d.ts.map +1 -1
- package/dist/tools/wait.js +19 -16
- package/dist/tools/wait.js.map +1 -1
- package/package.json +48 -40
package/dist/extension/bridge.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* 封装与 Chrome Extension 的通信,提供与 CDP 类似的接口
|
|
5
5
|
* 使用 HTTP + WebSocket 实现
|
|
6
6
|
*/
|
|
7
|
+
import { DriverCapabilityError, } from '../core/browser-driver.js';
|
|
7
8
|
import { ExtensionHttpServer } from './http-server.js';
|
|
8
9
|
/** RPC 传输余量(毫秒):给网络往返和 Extension 处理留出的额外时间 */
|
|
9
10
|
const RPC_MARGIN = 5000;
|
|
@@ -26,8 +27,8 @@ export class ExtensionBridge {
|
|
|
26
27
|
this.httpServer.on('connected', () => {
|
|
27
28
|
if (this.currentTabId !== null) {
|
|
28
29
|
const tabId = this.currentTabId;
|
|
29
|
-
this.httpServer.sendCommand('debugger_attach', { tabId }).catch(() => {
|
|
30
|
-
|
|
30
|
+
this.httpServer.sendCommand('debugger_attach', { tabId }).catch((err) => {
|
|
31
|
+
console.error('[Bridge] 重连后 debugger re-attach 失败:', err.message);
|
|
31
32
|
});
|
|
32
33
|
}
|
|
33
34
|
});
|
|
@@ -53,6 +54,25 @@ export class ExtensionBridge {
|
|
|
53
54
|
const result = await this.httpServer.sendCommand('tabs_list', {});
|
|
54
55
|
return result;
|
|
55
56
|
}
|
|
57
|
+
/** IBrowserDriver 接口:列出所有 tab,统一为 ListedTarget 形式(id 字符串化以保持跨 driver 兼容) */
|
|
58
|
+
async listTargets() {
|
|
59
|
+
const tabs = await this.listTabs();
|
|
60
|
+
return tabs.map((tab) => ({
|
|
61
|
+
id: tab.id,
|
|
62
|
+
targetId: String(tab.id),
|
|
63
|
+
url: tab.url,
|
|
64
|
+
title: tab.title,
|
|
65
|
+
type: 'page',
|
|
66
|
+
active: tab.active,
|
|
67
|
+
windowId: tab.windowId,
|
|
68
|
+
index: tab.index,
|
|
69
|
+
groupId: tab.groupId,
|
|
70
|
+
pinned: tab.pinned,
|
|
71
|
+
incognito: tab.incognito,
|
|
72
|
+
managed: tab.managed,
|
|
73
|
+
status: tab.status,
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
56
76
|
async createTab(url, timeout) {
|
|
57
77
|
const rpcTimeout = timeout !== undefined ? timeout + RPC_MARGIN : undefined;
|
|
58
78
|
const result = await this.httpServer.sendCommand('tabs_create', {
|
|
@@ -67,6 +87,16 @@ export class ExtensionBridge {
|
|
|
67
87
|
this.updateState(tab.url, tab.title);
|
|
68
88
|
return tab;
|
|
69
89
|
}
|
|
90
|
+
/** IBrowserDriver 接口:新建页面(targetId 为字符串化的 chrome tab id) */
|
|
91
|
+
async newPage(url, timeout) {
|
|
92
|
+
const tab = await this.createTab(url, timeout);
|
|
93
|
+
return {
|
|
94
|
+
targetId: String(tab.id),
|
|
95
|
+
url: tab.url,
|
|
96
|
+
title: tab.title,
|
|
97
|
+
type: 'page',
|
|
98
|
+
};
|
|
99
|
+
}
|
|
70
100
|
async closeTab(tabId) {
|
|
71
101
|
await this.httpServer.sendCommand('tabs_close', { tabId });
|
|
72
102
|
if (this.currentTabId === tabId) {
|
|
@@ -74,49 +104,71 @@ export class ExtensionBridge {
|
|
|
74
104
|
this.state = null;
|
|
75
105
|
}
|
|
76
106
|
}
|
|
107
|
+
/** IBrowserDriver 接口:关闭页面(targetId 是 chrome tab id 的字符串形式,省略时关闭当前 tab) */
|
|
108
|
+
async closePage(targetId) {
|
|
109
|
+
const tabId = targetId !== undefined ? this.parseTargetId(targetId) : this.currentTabId;
|
|
110
|
+
if (tabId === null) {
|
|
111
|
+
throw new DriverCapabilityError('没有可关闭的页面,请指定 targetId');
|
|
112
|
+
}
|
|
113
|
+
await this.closeTab(tabId);
|
|
114
|
+
}
|
|
77
115
|
async activateTab(tabId) {
|
|
78
116
|
const result = await this.httpServer.sendCommand('tabs_activate', { tabId });
|
|
79
117
|
const tab = result;
|
|
80
118
|
this.currentTabId = tab.id;
|
|
81
119
|
this.updateState(tab.url, tab.title);
|
|
82
120
|
}
|
|
83
|
-
|
|
121
|
+
/** IBrowserDriver 接口:激活页面(切到前台) */
|
|
122
|
+
async activatePage(targetId) {
|
|
123
|
+
const tabId = this.parseTargetId(targetId);
|
|
124
|
+
await this.activateTab(tabId);
|
|
125
|
+
}
|
|
126
|
+
/** IBrowserDriver 接口:选择操作目标 tab(不切换前台,只设置当前 currentTabId) */
|
|
127
|
+
async selectPage(targetId) {
|
|
128
|
+
const tabId = this.parseTargetId(targetId);
|
|
129
|
+
this.currentTabId = tabId;
|
|
130
|
+
}
|
|
131
|
+
/** IBrowserDriver 接口:获取当前操作目标 ID(chrome tab id 的字符串形式) */
|
|
132
|
+
getCurrentTargetId() {
|
|
133
|
+
return this.currentTabId !== null ? String(this.currentTabId) : null;
|
|
134
|
+
}
|
|
135
|
+
/** IBrowserDriver 接口:设置当前操作目标 ID */
|
|
136
|
+
setCurrentTargetId(targetId) {
|
|
137
|
+
this.currentTabId = targetId !== null ? this.parseTargetId(targetId) : null;
|
|
138
|
+
}
|
|
84
139
|
async navigate(url, options) {
|
|
85
140
|
const rpcTimeout = options?.timeout !== undefined ? options.timeout + RPC_MARGIN : undefined;
|
|
86
141
|
const result = await this.httpServer.sendCommand('navigate', {
|
|
87
142
|
tabId: this.currentTabId,
|
|
88
143
|
url,
|
|
89
|
-
waitUntil: options?.
|
|
144
|
+
waitUntil: options?.wait ?? 'load',
|
|
90
145
|
timeout: options?.timeout,
|
|
91
146
|
}, rpcTimeout);
|
|
92
147
|
const tab = result;
|
|
93
148
|
this.updateState(tab.url, tab.title);
|
|
94
149
|
}
|
|
150
|
+
// ==================== 导航操作 ====================
|
|
95
151
|
async goBack(timeout) {
|
|
96
152
|
// 默认:NAV_SIGNAL_WINDOW + 导航等待(默认 30s)+ RPC_MARGIN = 40s
|
|
97
153
|
// 调用方传 timeout 时:timeout 即导航超时 + 信号窗口 + 传输余量
|
|
98
|
-
const rpcTimeout = timeout !== undefined ?
|
|
99
|
-
|
|
100
|
-
30000 + NAV_SIGNAL_WINDOW + RPC_MARGIN;
|
|
101
|
-
const result = await this.httpServer.sendCommand('go_back', {
|
|
154
|
+
const rpcTimeout = timeout !== undefined ? timeout + NAV_SIGNAL_WINDOW + RPC_MARGIN : 30000 + NAV_SIGNAL_WINDOW + RPC_MARGIN;
|
|
155
|
+
const result = (await this.httpServer.sendCommand('go_back', {
|
|
102
156
|
tabId: this.currentTabId,
|
|
103
157
|
waitUntil: 'load',
|
|
104
158
|
timeout,
|
|
105
|
-
}, rpcTimeout);
|
|
159
|
+
}, rpcTimeout));
|
|
106
160
|
this.updateState(result.url, result.title);
|
|
107
161
|
return result;
|
|
108
162
|
}
|
|
109
163
|
async goForward(timeout) {
|
|
110
164
|
// 默认:NAV_SIGNAL_WINDOW + 导航等待(默认 30s)+ RPC_MARGIN = 40s
|
|
111
165
|
// 调用方传 timeout 时:timeout 即导航超时 + 信号窗口 + 传输余量
|
|
112
|
-
const rpcTimeout = timeout !== undefined ?
|
|
113
|
-
|
|
114
|
-
30000 + NAV_SIGNAL_WINDOW + RPC_MARGIN;
|
|
115
|
-
const result = await this.httpServer.sendCommand('go_forward', {
|
|
166
|
+
const rpcTimeout = timeout !== undefined ? timeout + NAV_SIGNAL_WINDOW + RPC_MARGIN : 30000 + NAV_SIGNAL_WINDOW + RPC_MARGIN;
|
|
167
|
+
const result = (await this.httpServer.sendCommand('go_forward', {
|
|
116
168
|
tabId: this.currentTabId,
|
|
117
169
|
waitUntil: 'load',
|
|
118
170
|
timeout,
|
|
119
|
-
}, rpcTimeout);
|
|
171
|
+
}, rpcTimeout));
|
|
120
172
|
this.updateState(result.url, result.title);
|
|
121
173
|
return result;
|
|
122
174
|
}
|
|
@@ -131,74 +183,73 @@ export class ExtensionBridge {
|
|
|
131
183
|
const tab = result;
|
|
132
184
|
this.updateState(tab.url, tab.title);
|
|
133
185
|
}
|
|
134
|
-
// ==================== 页面内容 ====================
|
|
135
186
|
async readPage(options) {
|
|
136
|
-
return await this.httpServer.sendCommand('read_page', {
|
|
187
|
+
return (await this.httpServer.sendCommand('read_page', {
|
|
137
188
|
tabId: this.currentTabId,
|
|
138
189
|
frameId: this.currentFrameId || undefined,
|
|
139
190
|
...options,
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
async screenshot(options) {
|
|
143
|
-
return await this.httpServer.sendCommand('screenshot', {
|
|
144
|
-
tabId: this.currentTabId,
|
|
145
|
-
...options,
|
|
146
|
-
});
|
|
191
|
+
}));
|
|
147
192
|
}
|
|
148
|
-
// ====================
|
|
193
|
+
// ==================== 页面内容 ====================
|
|
149
194
|
async click(refId) {
|
|
150
|
-
const result = await this.httpServer.sendCommand('click', {
|
|
195
|
+
const result = (await this.httpServer.sendCommand('click', {
|
|
151
196
|
tabId: this.currentTabId,
|
|
152
197
|
frameId: this.currentFrameId || undefined,
|
|
153
198
|
refId,
|
|
154
|
-
});
|
|
199
|
+
}));
|
|
155
200
|
if (!result.success) {
|
|
156
201
|
throw new Error(result.error || 'Click failed');
|
|
157
202
|
}
|
|
158
203
|
}
|
|
204
|
+
// ==================== DOM 操作 ====================
|
|
159
205
|
async actionableClick(refId, force) {
|
|
160
|
-
return await this.httpServer.sendCommand('actionable_click', {
|
|
206
|
+
return (await this.httpServer.sendCommand('actionable_click', {
|
|
161
207
|
tabId: this.currentTabId,
|
|
162
208
|
frameId: this.currentFrameId || undefined,
|
|
163
209
|
refId,
|
|
164
210
|
force: force ?? false,
|
|
165
|
-
});
|
|
211
|
+
}));
|
|
166
212
|
}
|
|
167
|
-
async
|
|
168
|
-
return await this.httpServer.sendCommand('
|
|
213
|
+
async dispatchInput(refId, text) {
|
|
214
|
+
return (await this.httpServer.sendCommand('dispatch_input', {
|
|
169
215
|
tabId: this.currentTabId,
|
|
170
216
|
frameId: this.currentFrameId || undefined,
|
|
171
217
|
refId,
|
|
172
|
-
|
|
218
|
+
text,
|
|
219
|
+
}));
|
|
173
220
|
}
|
|
174
|
-
async
|
|
175
|
-
return await this.httpServer.sendCommand('
|
|
221
|
+
async dragAndDrop(srcRefId, dstRefId) {
|
|
222
|
+
return (await this.httpServer.sendCommand('drag_and_drop', {
|
|
176
223
|
tabId: this.currentTabId,
|
|
177
224
|
frameId: this.currentFrameId || undefined,
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
});
|
|
225
|
+
srcRefId,
|
|
226
|
+
dstRefId,
|
|
227
|
+
}));
|
|
181
228
|
}
|
|
182
229
|
async getComputedStyle(refId, prop) {
|
|
183
|
-
return await this.httpServer.sendCommand('get_computed_style', {
|
|
230
|
+
return (await this.httpServer.sendCommand('get_computed_style', {
|
|
184
231
|
tabId: this.currentTabId,
|
|
185
232
|
frameId: this.currentFrameId || undefined,
|
|
186
233
|
refId,
|
|
187
234
|
prop,
|
|
188
|
-
});
|
|
235
|
+
}));
|
|
189
236
|
}
|
|
190
237
|
async type(refId, text, clear = false) {
|
|
191
|
-
const result = await this.httpServer.sendCommand('type', {
|
|
238
|
+
const result = (await this.httpServer.sendCommand('type', {
|
|
192
239
|
tabId: this.currentTabId,
|
|
193
240
|
frameId: this.currentFrameId || undefined,
|
|
194
241
|
refId,
|
|
195
242
|
text,
|
|
196
243
|
clear,
|
|
197
|
-
});
|
|
244
|
+
}));
|
|
198
245
|
if (!result.success) {
|
|
199
246
|
throw new Error(result.error || 'Type failed');
|
|
200
247
|
}
|
|
201
248
|
}
|
|
249
|
+
/** IBrowserDriver 接口别名(避开与字段名冲突的命名歧义) */
|
|
250
|
+
typeRef(refId, text, clear = false) {
|
|
251
|
+
return this.type(refId, text, clear);
|
|
252
|
+
}
|
|
202
253
|
async scroll(x, y, refId) {
|
|
203
254
|
await this.httpServer.sendCommand('scroll', {
|
|
204
255
|
tabId: this.currentTabId,
|
|
@@ -208,84 +259,122 @@ export class ExtensionBridge {
|
|
|
208
259
|
refId,
|
|
209
260
|
});
|
|
210
261
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
262
|
+
/** IBrowserDriver 接口别名 */
|
|
263
|
+
scrollAt(x, y, refId) {
|
|
264
|
+
return this.scroll(x, y, refId);
|
|
265
|
+
}
|
|
266
|
+
async evaluate(code, _args, timeout) {
|
|
267
|
+
// _args 参数仅满足 IBrowserDriver 接口签名;ExtensionBridge 不消费 args(stealth 路径上层已字符串拼接)
|
|
268
|
+
const rpcTimeout = timeout !== undefined ? timeout + RPC_MARGIN : undefined;
|
|
269
|
+
const result = (await this.httpServer.sendCommand('evaluate', {
|
|
215
270
|
tabId: this.currentTabId,
|
|
216
271
|
frameId: this.currentFrameId || undefined,
|
|
217
272
|
code,
|
|
218
273
|
timeout,
|
|
219
|
-
}, rpcTimeout);
|
|
274
|
+
}, rpcTimeout));
|
|
220
275
|
if (!result.success) {
|
|
221
276
|
throw new Error(result.error || 'Evaluate failed');
|
|
222
277
|
}
|
|
223
|
-
|
|
278
|
+
if (!result.result) {
|
|
279
|
+
return undefined;
|
|
280
|
+
}
|
|
281
|
+
try {
|
|
282
|
+
return JSON.parse(result.result);
|
|
283
|
+
}
|
|
284
|
+
catch (err) {
|
|
285
|
+
throw new Error(`evaluate 结果 JSON 解析失败: ${err}`);
|
|
286
|
+
}
|
|
224
287
|
}
|
|
225
288
|
async find(selector, text, xpath, timeout) {
|
|
226
|
-
return await this.httpServer.sendCommand('find', {
|
|
289
|
+
return (await this.httpServer.sendCommand('find', {
|
|
227
290
|
tabId: this.currentTabId,
|
|
228
291
|
frameId: this.currentFrameId || undefined,
|
|
229
292
|
selector,
|
|
230
293
|
text,
|
|
231
294
|
xpath,
|
|
232
|
-
}, timeout);
|
|
295
|
+
}, timeout));
|
|
233
296
|
}
|
|
234
297
|
async getText(selector) {
|
|
235
|
-
const result = await this.httpServer.sendCommand('get_text', {
|
|
298
|
+
const result = (await this.httpServer.sendCommand('get_text', {
|
|
236
299
|
tabId: this.currentTabId,
|
|
237
300
|
frameId: this.currentFrameId || undefined,
|
|
238
301
|
selector,
|
|
239
|
-
});
|
|
302
|
+
}));
|
|
240
303
|
return result.text;
|
|
241
304
|
}
|
|
242
305
|
async getHtml(selector, outer = true) {
|
|
243
|
-
const result = await this.httpServer.sendCommand('get_html', {
|
|
306
|
+
const result = (await this.httpServer.sendCommand('get_html', {
|
|
244
307
|
tabId: this.currentTabId,
|
|
245
308
|
frameId: this.currentFrameId || undefined,
|
|
246
309
|
selector,
|
|
247
310
|
outer,
|
|
248
|
-
});
|
|
311
|
+
}));
|
|
249
312
|
return result.html;
|
|
250
313
|
}
|
|
314
|
+
getPageHtml(selector, outer = true) {
|
|
315
|
+
return this.getHtml(selector, outer);
|
|
316
|
+
}
|
|
317
|
+
getPageText(selector) {
|
|
318
|
+
return this.getText(selector);
|
|
319
|
+
}
|
|
320
|
+
async getConsoleLogs(options = {}) {
|
|
321
|
+
const messages = await this.consoleGet(options);
|
|
322
|
+
return messages;
|
|
323
|
+
}
|
|
324
|
+
async getNetworkRequests(options = {}) {
|
|
325
|
+
const requests = await this.networkGet(options);
|
|
326
|
+
return requests;
|
|
327
|
+
}
|
|
328
|
+
async screenshot(options) {
|
|
329
|
+
return (await this.httpServer.sendCommand('screenshot', {
|
|
330
|
+
tabId: this.currentTabId,
|
|
331
|
+
...options,
|
|
332
|
+
}));
|
|
333
|
+
}
|
|
251
334
|
async getHtmlWithImages(selector, outer = true) {
|
|
252
|
-
return await this.httpServer.sendCommand('get_html_with_images', {
|
|
335
|
+
return (await this.httpServer.sendCommand('get_html_with_images', {
|
|
253
336
|
tabId: this.currentTabId,
|
|
254
337
|
frameId: this.currentFrameId || undefined,
|
|
255
338
|
selector,
|
|
256
339
|
outer,
|
|
257
|
-
});
|
|
340
|
+
}));
|
|
258
341
|
}
|
|
259
342
|
async getAttribute(selector, refId, attribute) {
|
|
260
|
-
const result = await this.httpServer.sendCommand('get_attribute', {
|
|
343
|
+
const result = (await this.httpServer.sendCommand('get_attribute', {
|
|
261
344
|
tabId: this.currentTabId,
|
|
262
345
|
frameId: this.currentFrameId || undefined,
|
|
263
346
|
selector,
|
|
264
347
|
refId,
|
|
265
348
|
attribute,
|
|
266
|
-
});
|
|
349
|
+
}));
|
|
267
350
|
return result.value;
|
|
268
351
|
}
|
|
269
352
|
async getMetadata() {
|
|
270
|
-
return await this.httpServer.sendCommand('get_metadata', {
|
|
353
|
+
return (await this.httpServer.sendCommand('get_metadata', {
|
|
271
354
|
tabId: this.currentTabId,
|
|
272
355
|
frameId: this.currentFrameId || undefined,
|
|
273
|
-
});
|
|
356
|
+
}));
|
|
274
357
|
}
|
|
275
|
-
// ==================== Cookies ====================
|
|
276
358
|
async getCookies(filter) {
|
|
277
|
-
return await this.httpServer.sendCommand('cookies_get', filter ?? {});
|
|
359
|
+
return (await this.httpServer.sendCommand('cookies_get', filter ?? {}));
|
|
278
360
|
}
|
|
361
|
+
// ==================== Cookies ====================
|
|
279
362
|
async setCookie(params) {
|
|
280
|
-
|
|
363
|
+
const sameSiteMap = { None: 'no_restriction', Lax: 'lax', Strict: 'strict' };
|
|
364
|
+
const chromeSameSite = params.sameSite ? (sameSiteMap[params.sameSite] ?? params.sameSite) : undefined;
|
|
365
|
+
const url = params.url ?? this.state?.url ?? 'http://localhost';
|
|
366
|
+
await this.httpServer.sendCommand('cookies_set', {
|
|
367
|
+
...params,
|
|
368
|
+
url,
|
|
369
|
+
...(chromeSameSite !== undefined && { sameSite: chromeSameSite }),
|
|
370
|
+
});
|
|
281
371
|
}
|
|
282
372
|
async deleteCookie(url, name) {
|
|
283
373
|
await this.httpServer.sendCommand('cookies_delete', { url, name });
|
|
284
374
|
}
|
|
285
375
|
async clearCookies(filter) {
|
|
286
|
-
return await this.httpServer.sendCommand('cookies_clear', filter ?? {});
|
|
376
|
+
return (await this.httpServer.sendCommand('cookies_clear', filter ?? {}));
|
|
287
377
|
}
|
|
288
|
-
// ==================== Debugger (CDP via Extension) ====================
|
|
289
378
|
async debuggerSend(method, params, tabId, timeout) {
|
|
290
379
|
return await this.httpServer.sendCommand('debugger_send', {
|
|
291
380
|
tabId: tabId ?? this.currentTabId,
|
|
@@ -293,7 +382,7 @@ export class ExtensionBridge {
|
|
|
293
382
|
params,
|
|
294
383
|
}, timeout);
|
|
295
384
|
}
|
|
296
|
-
// ====================
|
|
385
|
+
// ==================== Debugger (CDP via Extension) ====================
|
|
297
386
|
async inputKey(type, options = {}) {
|
|
298
387
|
await this.httpServer.sendCommand('input_key', {
|
|
299
388
|
tabId: this.currentTabId,
|
|
@@ -301,6 +390,7 @@ export class ExtensionBridge {
|
|
|
301
390
|
...options,
|
|
302
391
|
});
|
|
303
392
|
}
|
|
393
|
+
// ==================== 输入事件(通过 CDP)====================
|
|
304
394
|
async inputMouse(type, x, y, options = {}) {
|
|
305
395
|
await this.httpServer.sendCommand('input_mouse', {
|
|
306
396
|
tabId: this.currentTabId,
|
|
@@ -324,33 +414,32 @@ export class ExtensionBridge {
|
|
|
324
414
|
delay,
|
|
325
415
|
});
|
|
326
416
|
}
|
|
327
|
-
// ==================== 控制台日志 ====================
|
|
328
417
|
async consoleEnable() {
|
|
329
418
|
await this.httpServer.sendCommand('console_enable', {
|
|
330
419
|
tabId: this.currentTabId,
|
|
331
420
|
});
|
|
332
421
|
}
|
|
422
|
+
// ==================== 控制台日志 ====================
|
|
333
423
|
async consoleGet(options = {}) {
|
|
334
|
-
const result = await this.httpServer.sendCommand('console_get', {
|
|
424
|
+
const result = (await this.httpServer.sendCommand('console_get', {
|
|
335
425
|
tabId: this.currentTabId,
|
|
336
426
|
...options,
|
|
337
|
-
});
|
|
427
|
+
}));
|
|
338
428
|
return result.messages;
|
|
339
429
|
}
|
|
340
|
-
// ==================== 网络日志 ====================
|
|
341
430
|
async networkEnable() {
|
|
342
431
|
await this.httpServer.sendCommand('network_enable', {
|
|
343
432
|
tabId: this.currentTabId,
|
|
344
433
|
});
|
|
345
434
|
}
|
|
435
|
+
// ==================== 网络日志 ====================
|
|
346
436
|
async networkGet(options = {}) {
|
|
347
|
-
const result = await this.httpServer.sendCommand('network_get', {
|
|
437
|
+
const result = (await this.httpServer.sendCommand('network_get', {
|
|
348
438
|
tabId: this.currentTabId,
|
|
349
439
|
...options,
|
|
350
|
-
});
|
|
440
|
+
}));
|
|
351
441
|
return result.requests;
|
|
352
442
|
}
|
|
353
|
-
// ==================== Stealth 模式(JS 事件模拟,无 debugger)====================
|
|
354
443
|
async stealthType(text, delay = 0) {
|
|
355
444
|
await this.httpServer.sendCommand('stealth_type', {
|
|
356
445
|
tabId: this.currentTabId,
|
|
@@ -359,6 +448,7 @@ export class ExtensionBridge {
|
|
|
359
448
|
delay,
|
|
360
449
|
});
|
|
361
450
|
}
|
|
451
|
+
// ==================== Stealth 模式(JS 事件模拟,无 debugger)====================
|
|
362
452
|
async stealthKey(key, type = 'press', modifiers = []) {
|
|
363
453
|
await this.httpServer.sendCommand('stealth_key', {
|
|
364
454
|
tabId: this.currentTabId,
|
|
@@ -368,13 +458,15 @@ export class ExtensionBridge {
|
|
|
368
458
|
modifiers,
|
|
369
459
|
});
|
|
370
460
|
}
|
|
371
|
-
async stealthClick(x, y, button = 'left') {
|
|
461
|
+
async stealthClick(x, y, button = 'left', clickCount = 1, refId) {
|
|
372
462
|
await this.httpServer.sendCommand('stealth_click', {
|
|
373
463
|
tabId: this.currentTabId,
|
|
374
464
|
frameId: this.currentFrameId || undefined,
|
|
375
465
|
x,
|
|
376
466
|
y,
|
|
377
467
|
button,
|
|
468
|
+
clickCount,
|
|
469
|
+
refId,
|
|
378
470
|
});
|
|
379
471
|
}
|
|
380
472
|
async stealthMouse(type, x, y, button = 'left') {
|
|
@@ -393,10 +485,10 @@ export class ExtensionBridge {
|
|
|
393
485
|
frameId: this.currentFrameId || undefined,
|
|
394
486
|
});
|
|
395
487
|
}
|
|
396
|
-
// ==================== 状态管理 ====================
|
|
397
488
|
getState() {
|
|
398
489
|
return this.state;
|
|
399
490
|
}
|
|
491
|
+
// ==================== 状态管理 ====================
|
|
400
492
|
getCurrentTabId() {
|
|
401
493
|
return this.currentTabId;
|
|
402
494
|
}
|
|
@@ -413,23 +505,30 @@ export class ExtensionBridge {
|
|
|
413
505
|
* 在指定 iframe 中以 precise 模式执行 JS(通过 contextId 绕过 CSP)
|
|
414
506
|
*/
|
|
415
507
|
async evaluateInFrame(frameId, expression, timeout) {
|
|
416
|
-
return await this.httpServer.sendCommand('evaluate_in_frame', {
|
|
508
|
+
return (await this.httpServer.sendCommand('evaluate_in_frame', {
|
|
417
509
|
tabId: this.currentTabId,
|
|
418
510
|
frameId,
|
|
419
511
|
expression,
|
|
420
512
|
returnByValue: true,
|
|
421
513
|
awaitPromise: true,
|
|
422
514
|
timeout,
|
|
423
|
-
}, timeout);
|
|
515
|
+
}, timeout));
|
|
424
516
|
}
|
|
425
517
|
/**
|
|
426
518
|
* 解析 iframe 选择器/索引 → frameId
|
|
427
519
|
*/
|
|
428
520
|
async resolveFrame(frame) {
|
|
429
|
-
return await this.httpServer.sendCommand('resolve_frame', {
|
|
521
|
+
return (await this.httpServer.sendCommand('resolve_frame', {
|
|
430
522
|
tabId: this.currentTabId,
|
|
431
523
|
frame,
|
|
432
|
-
});
|
|
524
|
+
}));
|
|
525
|
+
}
|
|
526
|
+
parseTargetId(targetId) {
|
|
527
|
+
const parsed = parseInt(targetId, 10);
|
|
528
|
+
if (isNaN(parsed)) {
|
|
529
|
+
throw new DriverCapabilityError(`无效的 Tab ID: ${targetId}`);
|
|
530
|
+
}
|
|
531
|
+
return parsed;
|
|
433
532
|
}
|
|
434
533
|
updateState(url, title) {
|
|
435
534
|
this.state = { url, title };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/extension/bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/extension/bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,9 +28,9 @@ export declare class ExtensionHttpServer extends EventEmitter {
|
|
|
28
28
|
* 发送命令到 Extension
|
|
29
29
|
* @param action 操作名称
|
|
30
30
|
* @param params 操作参数
|
|
31
|
-
* @param requestTimeout
|
|
32
|
-
* 不传则使用 REQUEST_TIMEOUT (30s)
|
|
33
|
-
* ≤0
|
|
31
|
+
* @param requestTimeout 端到端预算(毫秒),包含连接等待和请求超时,
|
|
32
|
+
* 不传则使用 REQUEST_TIMEOUT (30s),
|
|
33
|
+
* ≤0 直接失败
|
|
34
34
|
*/
|
|
35
35
|
sendCommand(action: string, params?: unknown, requestTimeout?: number): Promise<unknown>;
|
|
36
36
|
waitForConnection(timeout?: number): Promise<boolean>;
|
|
@@ -47,12 +47,14 @@ export declare class ExtensionHttpServer extends EventEmitter {
|
|
|
47
47
|
/**
|
|
48
48
|
* 启动心跳:定期发送 ping,检测 pong 响应
|
|
49
49
|
* 如果 Extension 的 Service Worker 被 Chrome 杀死,TCP 连接可能不会立即关闭,
|
|
50
|
-
* 心跳机制能及时检测到这种"半死"
|
|
50
|
+
* 心跳机制能及时检测到这种"半死"连接并清理
|
|
51
51
|
*/
|
|
52
52
|
private startHeartbeat;
|
|
53
53
|
private stopHeartbeat;
|
|
54
54
|
/**
|
|
55
55
|
* 立即 reject 所有 pending 请求并清理
|
|
56
|
+
*
|
|
57
|
+
* Extension 断开类原因抛 typed Error,便于上层 instanceof 判断而无需字符串匹配
|
|
56
58
|
*/
|
|
57
59
|
private rejectPendingHandlers;
|
|
58
60
|
private generateId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../../src/extension/http-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../../src/extension/http-server.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAgBrC,MAAM,WAAW,iBAAiB;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;AAQD,qBAAa,mBAAoB,SAAQ,YAAY;IAUrC,OAAO,CAAC,OAAO;IAT3B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,GAAG,CAA+B;IAC1C,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,IAAI,CAAI;IAChB,OAAO,CAAC,eAAe,CAAoC;IAC3D,OAAO,CAAC,gBAAgB,CAAsB;IAC9C,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,YAAY,CAAQ;gBAER,OAAO,GAAE,iBAAsB;IAI7C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;;;;;OAOG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAY,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwD5F,iBAAiB,CAAC,OAAO,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BtD,WAAW,IAAI,OAAO;IAItB,OAAO,IAAI,MAAM;IAIX,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAyDtB,OAAO,CAAC,SAAS;IAkBjB,OAAO,CAAC,iBAAiB;IA6CzB,OAAO,CAAC,aAAa;IAmDrB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IA2BtB,OAAO,CAAC,aAAa;IAOrB;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,UAAU;CAGrB"}
|