@pyrokine/mcp-chrome 1.0.0 → 1.3.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 +236 -96
- package/dist/anti-detection/behavior.d.ts +0 -8
- package/dist/anti-detection/behavior.d.ts.map +1 -1
- package/dist/anti-detection/behavior.js +0 -16
- package/dist/anti-detection/behavior.js.map +1 -1
- package/dist/cdp/client.d.ts +10 -2
- package/dist/cdp/client.d.ts.map +1 -1
- package/dist/cdp/client.js +76 -61
- package/dist/cdp/client.js.map +1 -1
- package/dist/cdp/launcher.d.ts +1 -8
- package/dist/cdp/launcher.d.ts.map +1 -1
- package/dist/cdp/launcher.js +18 -24
- package/dist/cdp/launcher.js.map +1 -1
- package/dist/core/auto-wait.d.ts +8 -1
- package/dist/core/auto-wait.d.ts.map +1 -1
- package/dist/core/auto-wait.js +15 -5
- package/dist/core/auto-wait.js.map +1 -1
- package/dist/core/errors.d.ts +11 -13
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +50 -31
- package/dist/core/errors.js.map +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/locator.d.ts +17 -6
- package/dist/core/locator.d.ts.map +1 -1
- package/dist/core/locator.js +137 -28
- package/dist/core/locator.js.map +1 -1
- package/dist/core/retry.d.ts.map +1 -1
- package/dist/core/retry.js +1 -1
- package/dist/core/retry.js.map +1 -1
- package/dist/core/session.d.ts +71 -16
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +365 -124
- package/dist/core/session.js.map +1 -1
- package/dist/core/types.d.ts +15 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +11 -2
- package/dist/core/types.js.map +1 -1
- package/dist/core/unified-session.d.ts +418 -0
- package/dist/core/unified-session.d.ts.map +1 -0
- package/dist/core/unified-session.js +1044 -0
- package/dist/core/unified-session.js.map +1 -0
- package/dist/extension/bridge.d.ts +203 -0
- package/dist/extension/bridge.d.ts.map +1 -0
- package/dist/extension/bridge.js +375 -0
- package/dist/extension/bridge.js.map +1 -0
- package/dist/extension/http-server.d.ts +60 -0
- package/dist/extension/http-server.d.ts.map +1 -0
- package/dist/extension/http-server.js +319 -0
- package/dist/extension/http-server.js.map +1 -0
- package/dist/extension/index.d.ts +7 -0
- package/dist/extension/index.d.ts.map +1 -0
- package/dist/extension/index.js +6 -0
- package/dist/extension/index.js.map +1 -0
- package/dist/extension/native-host-installer.d.ts +21 -0
- package/dist/extension/native-host-installer.d.ts.map +1 -0
- package/dist/extension/native-host-installer.js +147 -0
- package/dist/extension/native-host-installer.js.map +1 -0
- package/dist/extension/socket-server.d.ts +32 -0
- package/dist/extension/socket-server.d.ts.map +1 -0
- package/dist/extension/socket-server.js +177 -0
- package/dist/extension/socket-server.js.map +1 -0
- package/dist/extension/ws-server.d.ts +40 -0
- package/dist/extension/ws-server.d.ts.map +1 -0
- package/dist/extension/ws-server.js +246 -0
- package/dist/extension/ws-server.js.map +1 -0
- package/dist/index.js +16 -67
- package/dist/index.js.map +1 -1
- package/dist/native-host/index.js +280 -0
- package/dist/native-host/mcp-chrome-host +2 -0
- package/dist/tools/browse.d.ts +3 -76
- package/dist/tools/browse.d.ts.map +1 -1
- package/dist/tools/browse.js +193 -237
- package/dist/tools/browse.js.map +1 -1
- package/dist/tools/cookies.d.ts +6 -66
- package/dist/tools/cookies.d.ts.map +1 -1
- package/dist/tools/cookies.js +129 -125
- package/dist/tools/cookies.js.map +1 -1
- package/dist/tools/evaluate.d.ts +3 -37
- package/dist/tools/evaluate.d.ts.map +1 -1
- package/dist/tools/evaluate.js +68 -55
- package/dist/tools/evaluate.js.map +1 -1
- package/dist/tools/extract.d.ts +3 -200
- package/dist/tools/extract.d.ts.map +1 -1
- package/dist/tools/extract.js +287 -238
- package/dist/tools/extract.js.map +1 -1
- package/dist/tools/index.d.ts +9 -9
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +9 -9
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/input.d.ts +3 -228
- package/dist/tools/input.d.ts.map +1 -1
- package/dist/tools/input.js +190 -129
- package/dist/tools/input.js.map +1 -1
- package/dist/tools/logs.d.ts +3 -47
- package/dist/tools/logs.d.ts.map +1 -1
- package/dist/tools/logs.js +100 -127
- package/dist/tools/logs.js.map +1 -1
- package/dist/tools/manage.d.ts +6 -51
- package/dist/tools/manage.d.ts.map +1 -1
- package/dist/tools/manage.js +284 -209
- package/dist/tools/manage.js.map +1 -1
- package/dist/tools/schema.d.ts +75 -168
- package/dist/tools/schema.d.ts.map +1 -1
- package/dist/tools/schema.js +276 -126
- package/dist/tools/schema.js.map +1 -1
- package/dist/tools/wait.d.ts +3 -191
- package/dist/tools/wait.d.ts.map +1 -1
- package/dist/tools/wait.js +298 -155
- package/dist/tools/wait.js.map +1 -1
- package/package.json +4 -5
- package/scripts/start-chrome-headless.sh +0 -37
- package/scripts/start-chrome.sh +0 -41
package/dist/core/errors.js
CHANGED
|
@@ -19,6 +19,7 @@ export class BrowserError extends Error {
|
|
|
19
19
|
/**
|
|
20
20
|
* 转换为 JSON 格式,用于 MCP 响应
|
|
21
21
|
*/
|
|
22
|
+
// noinspection JSUnusedGlobalSymbols — 被 formatErrorResponse 动态调用
|
|
22
23
|
toJSON() {
|
|
23
24
|
const result = {
|
|
24
25
|
error: {
|
|
@@ -100,13 +101,19 @@ export class ElementNotFoundError extends BrowserError {
|
|
|
100
101
|
}
|
|
101
102
|
}
|
|
102
103
|
toJSON() {
|
|
104
|
+
// 日志去重并限制输出数量,避免重复日志刷屏
|
|
105
|
+
const uniqueLogs = [...new Set(this.logs)];
|
|
106
|
+
const maxLogs = 10;
|
|
107
|
+
const logsOutput = uniqueLogs.length > maxLogs
|
|
108
|
+
? [...uniqueLogs.slice(0, maxLogs), `... 共 ${uniqueLogs.length} 条(已省略)`]
|
|
109
|
+
: uniqueLogs;
|
|
103
110
|
return {
|
|
104
111
|
error: {
|
|
105
112
|
code: this.code,
|
|
106
113
|
message: this.message,
|
|
107
114
|
suggestion: this.suggestion,
|
|
108
115
|
context: this.context,
|
|
109
|
-
logs:
|
|
116
|
+
logs: logsOutput,
|
|
110
117
|
},
|
|
111
118
|
};
|
|
112
119
|
}
|
|
@@ -133,17 +140,6 @@ export class TimeoutError extends BrowserError {
|
|
|
133
140
|
super(message);
|
|
134
141
|
}
|
|
135
142
|
}
|
|
136
|
-
/**
|
|
137
|
-
* 无效参数错误
|
|
138
|
-
*/
|
|
139
|
-
export class InvalidArgumentError extends BrowserError {
|
|
140
|
-
code = 'INVALID_ARGUMENT';
|
|
141
|
-
suggestion;
|
|
142
|
-
constructor(message, suggestion) {
|
|
143
|
-
super(message);
|
|
144
|
-
this.suggestion = suggestion ?? '请检查参数是否正确';
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
143
|
/**
|
|
148
144
|
* CDP 协议错误
|
|
149
145
|
*/
|
|
@@ -154,19 +150,6 @@ export class CDPError extends BrowserError {
|
|
|
154
150
|
super(message);
|
|
155
151
|
}
|
|
156
152
|
}
|
|
157
|
-
/**
|
|
158
|
-
* 格式化日志记录(参考 Playwright Waiter)
|
|
159
|
-
*/
|
|
160
|
-
export function formatLogRecording(logs) {
|
|
161
|
-
if (logs.length === 0) {
|
|
162
|
-
return '';
|
|
163
|
-
}
|
|
164
|
-
const header = ' logs ';
|
|
165
|
-
const width = 60;
|
|
166
|
-
const leftPad = '='.repeat(Math.floor((width - header.length) / 2));
|
|
167
|
-
const rightPad = '='.repeat(width - header.length - leftPad.length);
|
|
168
|
-
return `\n${leftPad}${header}${rightPad}\n${logs.join('\n')}\n${'='.repeat(width)}`;
|
|
169
|
-
}
|
|
170
153
|
/**
|
|
171
154
|
* ZodError 类型检测
|
|
172
155
|
*/
|
|
@@ -178,9 +161,30 @@ function isZodError(error) {
|
|
|
178
161
|
'issues' in error &&
|
|
179
162
|
Array.isArray(error.issues));
|
|
180
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* 检测错误是否可能由 tab 不在前台导致
|
|
166
|
+
*/
|
|
167
|
+
function detectVisibilityHint(errorMessage) {
|
|
168
|
+
const msg = errorMessage.toLowerCase();
|
|
169
|
+
const keywords = [
|
|
170
|
+
'hidden',
|
|
171
|
+
'visible',
|
|
172
|
+
'visibility',
|
|
173
|
+
'focus',
|
|
174
|
+
'blur',
|
|
175
|
+
'active tab',
|
|
176
|
+
'not active',
|
|
177
|
+
'capturevisibletab',
|
|
178
|
+
];
|
|
179
|
+
if (keywords.some(kw => msg.includes(kw))) {
|
|
180
|
+
return '此操作可能需要 tab 在前台。请使用 browse(action="attach", targetId="<id>", activate=true) 激活目标 tab';
|
|
181
|
+
}
|
|
182
|
+
return null;
|
|
183
|
+
}
|
|
181
184
|
/**
|
|
182
185
|
* 格式化错误为 MCP 工具响应
|
|
183
186
|
* 特别处理 ZodError,转换为结构化的 INVALID_ARGUMENT 错误
|
|
187
|
+
* 自动检测 visibility 相关错误并添加 hint
|
|
184
188
|
*/
|
|
185
189
|
export function formatErrorResponse(error) {
|
|
186
190
|
// 处理 ZodError
|
|
@@ -208,19 +212,34 @@ export function formatErrorResponse(error) {
|
|
|
208
212
|
}
|
|
209
213
|
// 处理 BrowserError(带 toJSON 方法)
|
|
210
214
|
const err = error;
|
|
215
|
+
const errorJson = err.toJSON?.() ?? {
|
|
216
|
+
error: {
|
|
217
|
+
code: 'UNKNOWN_ERROR',
|
|
218
|
+
message: err.message ?? String(error),
|
|
219
|
+
},
|
|
220
|
+
};
|
|
221
|
+
// 检测 visibility 相关错误,添加 hint
|
|
222
|
+
const errorMessage = err.message ?? String(error);
|
|
223
|
+
const hint = detectVisibilityHint(errorMessage);
|
|
224
|
+
if (hint) {
|
|
225
|
+
errorJson.hint = hint;
|
|
226
|
+
}
|
|
211
227
|
return {
|
|
212
228
|
content: [
|
|
213
229
|
{
|
|
214
230
|
type: 'text',
|
|
215
|
-
text: JSON.stringify(
|
|
216
|
-
error: {
|
|
217
|
-
code: 'UNKNOWN_ERROR',
|
|
218
|
-
message: err.message ?? String(error),
|
|
219
|
-
},
|
|
220
|
-
}, null, 2),
|
|
231
|
+
text: JSON.stringify(errorJson, null, 2),
|
|
221
232
|
},
|
|
222
233
|
],
|
|
223
234
|
isError: true,
|
|
224
235
|
};
|
|
225
236
|
}
|
|
237
|
+
/**
|
|
238
|
+
* 格式化成功响应为 MCP 工具响应
|
|
239
|
+
*/
|
|
240
|
+
export function formatResponse(data) {
|
|
241
|
+
return {
|
|
242
|
+
content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
|
|
243
|
+
};
|
|
244
|
+
}
|
|
226
245
|
//# sourceMappingURL=errors.js.map
|
package/dist/core/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH;;GAEG;AACH,MAAM,OAAgB,YAAa,SAAQ,KAAK;IAGnC,OAAO,GAAiB,EAAE,CAAA;IAEnC,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export * from './types.js';
|
|
|
5
5
|
export * from './errors.js';
|
|
6
6
|
export { Locator, type LocatorOptions } from './locator.js';
|
|
7
7
|
export { getSession } from './session.js';
|
|
8
|
+
export { getUnifiedSession, type ConnectionMode } from './unified-session.js';
|
|
8
9
|
export { withRetry, type RetryOptions } from './retry.js';
|
|
9
10
|
export { AutoWait, type AutoWaitOptions } from './auto-wait.js';
|
|
10
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAC,OAAO,EAAE,KAAK,cAAc,EAAC,MAAM,cAAc,CAAA;AACzD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AACvC,OAAO,EAAC,SAAS,EAAE,KAAK,YAAY,EAAC,MAAM,YAAY,CAAA;AACvD,OAAO,EAAC,QAAQ,EAAE,KAAK,eAAe,EAAC,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAC,OAAO,EAAE,KAAK,cAAc,EAAC,MAAM,cAAc,CAAA;AACzD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AACvC,OAAO,EAAC,iBAAiB,EAAE,KAAK,cAAc,EAAC,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAC,SAAS,EAAE,KAAK,YAAY,EAAC,MAAM,YAAY,CAAA;AACvD,OAAO,EAAC,QAAQ,EAAE,KAAK,eAAe,EAAC,MAAM,gBAAgB,CAAA"}
|
package/dist/core/index.js
CHANGED
|
@@ -5,6 +5,7 @@ export * from './types.js';
|
|
|
5
5
|
export * from './errors.js';
|
|
6
6
|
export { Locator } from './locator.js';
|
|
7
7
|
export { getSession } from './session.js';
|
|
8
|
+
export { getUnifiedSession } from './unified-session.js';
|
|
8
9
|
export { withRetry } from './retry.js';
|
|
9
10
|
export { AutoWait } from './auto-wait.js';
|
|
10
11
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAC,OAAO,EAAsB,MAAM,cAAc,CAAA;AACzD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AACvC,OAAO,EAAC,SAAS,EAAoB,MAAM,YAAY,CAAA;AACvD,OAAO,EAAC,QAAQ,EAAuB,MAAM,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAC,OAAO,EAAsB,MAAM,cAAc,CAAA;AACzD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AACvC,OAAO,EAAC,iBAAiB,EAAsB,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAC,SAAS,EAAoB,MAAM,YAAY,CAAA;AACvD,OAAO,EAAC,QAAQ,EAAuB,MAAM,gBAAgB,CAAA"}
|
package/dist/core/locator.d.ts
CHANGED
|
@@ -24,6 +24,8 @@ type NodeId = number;
|
|
|
24
24
|
export interface LocatorOptions {
|
|
25
25
|
/** 超时时间(毫秒),默认 30000 */
|
|
26
26
|
timeout?: number;
|
|
27
|
+
/** 第 N 个匹配元素(从 0 开始,默认 0 即第一个) */
|
|
28
|
+
nth?: number;
|
|
27
29
|
/** 获取当前 URL 的回调(用于错误上下文) */
|
|
28
30
|
getUrl?: () => string | undefined;
|
|
29
31
|
}
|
|
@@ -35,8 +37,10 @@ export declare class Locator {
|
|
|
35
37
|
private target;
|
|
36
38
|
private sessionId?;
|
|
37
39
|
private logs;
|
|
38
|
-
private timeout;
|
|
39
|
-
private
|
|
40
|
+
private readonly timeout;
|
|
41
|
+
private readonly deadline;
|
|
42
|
+
private readonly nth;
|
|
43
|
+
private readonly getUrl?;
|
|
40
44
|
constructor(cdp: CDPClient, target: Target, sessionId?: string | undefined, options?: LocatorOptions);
|
|
41
45
|
/**
|
|
42
46
|
* 查找元素,返回节点 ID(带重试)
|
|
@@ -57,10 +61,6 @@ export declare class Locator {
|
|
|
57
61
|
* @returns 函数返回值
|
|
58
62
|
*/
|
|
59
63
|
evaluateOn<T>(fn: string): Promise<T>;
|
|
60
|
-
/**
|
|
61
|
-
* 获取定位日志
|
|
62
|
-
*/
|
|
63
|
-
getLogs(): string[];
|
|
64
64
|
/**
|
|
65
65
|
* 查找元素的内部实现(单次尝试)
|
|
66
66
|
*/
|
|
@@ -97,6 +97,10 @@ export declare class Locator {
|
|
|
97
97
|
* 通过 CSS 选择器定位
|
|
98
98
|
*/
|
|
99
99
|
private findByCSS;
|
|
100
|
+
/**
|
|
101
|
+
* 通过 CSS + 文本组合定位
|
|
102
|
+
*/
|
|
103
|
+
private findByCSSAndText;
|
|
100
104
|
/**
|
|
101
105
|
* 通过 XPath 定位
|
|
102
106
|
*/
|
|
@@ -119,8 +123,15 @@ export declare class Locator {
|
|
|
119
123
|
private getBoxModel;
|
|
120
124
|
/**
|
|
121
125
|
* 发送 CDP 命令
|
|
126
|
+
*
|
|
127
|
+
* 使用 deadline 剩余时间而非静态 timeout,确保单个 CDP 命令不会超出整体预算。
|
|
128
|
+
* withRetry() 在重试间隙检查 deadline,此处保证单命令在当前 tick 内也受预算约束。
|
|
122
129
|
*/
|
|
123
130
|
private send;
|
|
131
|
+
/**
|
|
132
|
+
* deadline 剩余时间(至少 1ms,防止 0 被当作无超时)
|
|
133
|
+
*/
|
|
134
|
+
private remaining;
|
|
124
135
|
/**
|
|
125
136
|
* 记录日志
|
|
126
137
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locator.d.ts","sourceRoot":"","sources":["../../src/core/locator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAA;AAG/C,OAAO,EACH,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"locator.d.ts","sourceRoot":"","sources":["../../src/core/locator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,kBAAkB,CAAA;AAG/C,OAAO,EACH,KAAK,GAAG,EAaR,KAAK,KAAK,EACV,KAAK,MAAM,EACd,MAAM,YAAY,CAAA;AAEnB;;GAEG;AACH,KAAK,MAAM,GAAG,MAAM,CAAC;AAOrB;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACrC;AAyDD;;GAEG;AACH,qBAAa,OAAO;IAQZ,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,SAAS,CAAC;IATtB,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA0B;gBAGtC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,YAAA,EAC1B,OAAO,GAAE,cAAmB;IAQhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAY7B;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC;IAczC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC;IASpC;;;;;OAKG;IACG,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA6B3C;;OAEG;YACW,YAAY;IAoC1B;;OAEG;YACW,mBAAmB;IA+CjC;;OAEG;YACW,UAAU;IAiBxB;;OAEG;YACW,WAAW;IAsEzB;;OAEG;YACW,iBAAiB;IAiB/B;;OAEG;YACW,WAAW;IAazB;;OAEG;YACW,SAAS;IAavB;;OAEG;YACW,YAAY;IAQ1B;;OAEG;YACW,SAAS;IAOvB;;OAEG;YACW,gBAAgB;IAqC9B;;OAEG;YACW,WAAW;IAOzB;;OAEG;YACW,iBAAiB;IAoC/B;;OAEG;YACW,mBAAmB;IAgCjC;;OAEG;YACW,gBAAgB;IAgB9B;;OAEG;YACW,WAAW;IAgBzB;;;;;OAKG;IACH,OAAO,CAAC,IAAI;IAIZ;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;OAEG;IACH,OAAO,CAAC,GAAG;CAGd"}
|
package/dist/core/locator.js
CHANGED
|
@@ -14,8 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import { ElementNotFoundError } from './errors.js';
|
|
16
16
|
import { withRetry } from './retry.js';
|
|
17
|
-
import { isAltTarget, isCoordinateTarget, isCSSTarget, isLabelTarget, isPlaceholderTarget, isRoleTarget, isTestIdTarget, isTextTarget, isTitleTarget, isXPathTarget, } from './types.js';
|
|
18
|
-
const DEFAULT_TIMEOUT = 30000;
|
|
17
|
+
import { DEFAULT_TIMEOUT, isAltTarget, isCoordinateTarget, isCSSTarget, isCSSTextTarget, isLabelTarget, isPlaceholderTarget, isRoleTarget, isTestIdTarget, isTextTarget, isTitleTarget, isXPathTarget, } from './types.js';
|
|
19
18
|
/**
|
|
20
19
|
* 转义 XPath 字符串中的引号
|
|
21
20
|
* XPath 1.0 没有转义机制,需要用 concat() 拼接单双引号
|
|
@@ -78,12 +77,16 @@ export class Locator {
|
|
|
78
77
|
sessionId;
|
|
79
78
|
logs = [];
|
|
80
79
|
timeout;
|
|
80
|
+
deadline;
|
|
81
|
+
nth;
|
|
81
82
|
getUrl;
|
|
82
83
|
constructor(cdp, target, sessionId, options = {}) {
|
|
83
84
|
this.cdp = cdp;
|
|
84
85
|
this.target = target;
|
|
85
86
|
this.sessionId = sessionId;
|
|
86
87
|
this.timeout = options.timeout ?? DEFAULT_TIMEOUT;
|
|
88
|
+
this.deadline = Date.now() + this.timeout;
|
|
89
|
+
this.nth = options.nth ?? 0;
|
|
87
90
|
this.getUrl = options.getUrl;
|
|
88
91
|
}
|
|
89
92
|
/**
|
|
@@ -96,7 +99,7 @@ export class Locator {
|
|
|
96
99
|
// 坐标定位不需要 NodeId
|
|
97
100
|
throw new Error('坐标定位不支持 find(),请使用 getClickablePoint()');
|
|
98
101
|
}
|
|
99
|
-
return withRetry(() => this.findInternal(), { timeout: this.
|
|
102
|
+
return withRetry(() => this.findInternal(), { timeout: this.remaining() });
|
|
100
103
|
}
|
|
101
104
|
/**
|
|
102
105
|
* 获取元素中心坐标(用于点击)
|
|
@@ -148,12 +151,6 @@ export class Locator {
|
|
|
148
151
|
}
|
|
149
152
|
return result.value;
|
|
150
153
|
}
|
|
151
|
-
/**
|
|
152
|
-
* 获取定位日志
|
|
153
|
-
*/
|
|
154
|
-
getLogs() {
|
|
155
|
-
return this.logs;
|
|
156
|
-
}
|
|
157
154
|
/**
|
|
158
155
|
* 查找元素的内部实现(单次尝试)
|
|
159
156
|
*/
|
|
@@ -161,6 +158,10 @@ export class Locator {
|
|
|
161
158
|
if (isRoleTarget(this.target)) {
|
|
162
159
|
return this.findByAccessibility();
|
|
163
160
|
}
|
|
161
|
+
// CSS+text 必须在纯 text / 纯 CSS 之前:{css, text} 同时满足三者
|
|
162
|
+
if (isCSSTextTarget(this.target)) {
|
|
163
|
+
return this.findByCSSAndText();
|
|
164
|
+
}
|
|
164
165
|
if (isTextTarget(this.target)) {
|
|
165
166
|
return this.findByText();
|
|
166
167
|
}
|
|
@@ -192,12 +193,13 @@ export class Locator {
|
|
|
192
193
|
*/
|
|
193
194
|
async findByAccessibility() {
|
|
194
195
|
const { role, name } = this.target;
|
|
195
|
-
this.log(`使用可访问性树定位: role=${role}, name=${name ?? '(any)'}`);
|
|
196
|
+
this.log(`使用可访问性树定位: role=${role}, name=${name ?? '(any)'}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
196
197
|
// 启用可访问性
|
|
197
198
|
await this.send('Accessibility.enable');
|
|
198
199
|
// 获取整个可访问性树
|
|
199
200
|
const { nodes } = (await this.send('Accessibility.getFullAXTree'));
|
|
200
|
-
//
|
|
201
|
+
// 查找匹配的节点,跳过前 nth 个
|
|
202
|
+
let matchCount = 0;
|
|
201
203
|
for (const node of nodes) {
|
|
202
204
|
if (node.role?.value?.toLowerCase() !== role.toLowerCase()) {
|
|
203
205
|
continue;
|
|
@@ -206,7 +208,13 @@ export class Locator {
|
|
|
206
208
|
continue;
|
|
207
209
|
}
|
|
208
210
|
if (node.backendDOMNodeId) {
|
|
209
|
-
this.
|
|
211
|
+
if (matchCount < this.nth) {
|
|
212
|
+
++matchCount;
|
|
213
|
+
continue;
|
|
214
|
+
}
|
|
215
|
+
this.log(`找到元素: backendDOMNodeId=${node.backendDOMNodeId}${this.nth > 0 ?
|
|
216
|
+
`(第 ${this.nth} 个)` :
|
|
217
|
+
''}`);
|
|
210
218
|
// 将 backendDOMNodeId 转换为 nodeId
|
|
211
219
|
const { nodeIds } = (await this.send('DOM.pushNodesByBackendIdsToFrontend', {
|
|
212
220
|
backendNodeIds: [node.backendDOMNodeId],
|
|
@@ -223,12 +231,13 @@ export class Locator {
|
|
|
223
231
|
*/
|
|
224
232
|
async findByText() {
|
|
225
233
|
const { text, exact = false } = this.target;
|
|
226
|
-
this.log(`使用文本内容定位: text=${text}, exact=${exact}`);
|
|
234
|
+
this.log(`使用文本内容定位: text=${text}, exact=${exact}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
227
235
|
// 使用 XPath 查找包含文本的元素(正确转义引号)
|
|
236
|
+
// 用 . 而非 text():text() 只匹配直接子文本节点,. 匹配完整 textContent
|
|
228
237
|
const escapedText = escapeXPathString(text);
|
|
229
238
|
const xpath = exact
|
|
230
|
-
? `//*[
|
|
231
|
-
: `//*[contains(
|
|
239
|
+
? `//*[normalize-space(.)=${escapedText}]`
|
|
240
|
+
: `//*[contains(.,${escapedText})]`;
|
|
232
241
|
return this.findByXPathInternal(xpath);
|
|
233
242
|
}
|
|
234
243
|
/**
|
|
@@ -236,7 +245,7 @@ export class Locator {
|
|
|
236
245
|
*/
|
|
237
246
|
async findByLabel() {
|
|
238
247
|
const { label, exact = false } = this.target;
|
|
239
|
-
this.log(`使用 label 定位: label=${label}, exact=${exact}`);
|
|
248
|
+
this.log(`使用 label 定位: label=${label}, exact=${exact}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
240
249
|
// 转义 JS 字符串
|
|
241
250
|
const escapedLabel = escapeJSString(label);
|
|
242
251
|
// 使用 Runtime.evaluate 执行复杂查询
|
|
@@ -245,19 +254,45 @@ export class Locator {
|
|
|
245
254
|
(function() {
|
|
246
255
|
const targetLabel = "${escapedLabel}";
|
|
247
256
|
const isExact = ${exact};
|
|
257
|
+
const nth = ${this.nth};
|
|
248
258
|
const labels = document.querySelectorAll('label');
|
|
259
|
+
let matchCount = 0;
|
|
249
260
|
for (const label of labels) {
|
|
250
261
|
const text = label.textContent?.trim() ?? '';
|
|
251
262
|
const match = isExact ? text === targetLabel : text.includes(targetLabel);
|
|
252
263
|
if (match) {
|
|
253
|
-
|
|
264
|
+
let found = null;
|
|
265
|
+
// 1. 通过 for 属性找关联元素
|
|
254
266
|
if (label.htmlFor) {
|
|
255
267
|
const input = document.getElementById(label.htmlFor);
|
|
256
|
-
if (input)
|
|
268
|
+
if (input) found = input;
|
|
269
|
+
}
|
|
270
|
+
// 2. 找 label 内部的 input
|
|
271
|
+
if (!found) {
|
|
272
|
+
const inner = label.querySelector('input, select, textarea');
|
|
273
|
+
if (inner) found = inner;
|
|
274
|
+
}
|
|
275
|
+
// 3. 通过 label.id 推断(如 userName-label → #userName)
|
|
276
|
+
if (!found && label.id && label.id.endsWith('-label')) {
|
|
277
|
+
const inputId = label.id.slice(0, -6);
|
|
278
|
+
const input = document.getElementById(inputId);
|
|
279
|
+
if (input) found = input;
|
|
280
|
+
}
|
|
281
|
+
// 4. 在父元素的相邻兄弟中查找 input
|
|
282
|
+
if (!found) {
|
|
283
|
+
const parent = label.parentElement;
|
|
284
|
+
if (parent) {
|
|
285
|
+
for (const sibling of parent.parentElement?.children ?? []) {
|
|
286
|
+
if (sibling === parent) continue;
|
|
287
|
+
const input = sibling.querySelector('input, select, textarea');
|
|
288
|
+
if (input) { found = input; break; }
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
if (found) {
|
|
293
|
+
if (matchCount < nth) { ++matchCount; continue; }
|
|
294
|
+
return found;
|
|
257
295
|
}
|
|
258
|
-
// 找 label 内部的 input
|
|
259
|
-
const input = label.querySelector('input, select, textarea');
|
|
260
|
-
if (input) return input;
|
|
261
296
|
}
|
|
262
297
|
}
|
|
263
298
|
return null;
|
|
@@ -275,7 +310,9 @@ export class Locator {
|
|
|
275
310
|
*/
|
|
276
311
|
async findByPlaceholder() {
|
|
277
312
|
const { placeholder, exact = false } = this.target;
|
|
278
|
-
this.log(`使用 placeholder 定位: placeholder=${placeholder}, exact=${exact}
|
|
313
|
+
this.log(`使用 placeholder 定位: placeholder=${placeholder}, exact=${exact}${this.nth > 0 ?
|
|
314
|
+
`, nth=${this.nth}` :
|
|
315
|
+
''}`);
|
|
279
316
|
const escaped = escapeCSSAttributeValue(placeholder);
|
|
280
317
|
const css = exact
|
|
281
318
|
? `[placeholder="${escaped}"]`
|
|
@@ -287,7 +324,7 @@ export class Locator {
|
|
|
287
324
|
*/
|
|
288
325
|
async findByTitle() {
|
|
289
326
|
const { title, exact = false } = this.target;
|
|
290
|
-
this.log(`使用 title 属性定位: title=${title}, exact=${exact}`);
|
|
327
|
+
this.log(`使用 title 属性定位: title=${title}, exact=${exact}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
291
328
|
const escaped = escapeCSSAttributeValue(title);
|
|
292
329
|
const css = exact ? `[title="${escaped}"]` : `[title*="${escaped}"]`;
|
|
293
330
|
return this.findByCSSInternal(css);
|
|
@@ -297,7 +334,7 @@ export class Locator {
|
|
|
297
334
|
*/
|
|
298
335
|
async findByAlt() {
|
|
299
336
|
const { alt, exact = false } = this.target;
|
|
300
|
-
this.log(`使用 alt 属性定位: alt=${alt}, exact=${exact}`);
|
|
337
|
+
this.log(`使用 alt 属性定位: alt=${alt}, exact=${exact}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
301
338
|
const escaped = escapeCSSAttributeValue(alt);
|
|
302
339
|
const css = exact ? `[alt="${escaped}"]` : `[alt*="${escaped}"]`;
|
|
303
340
|
return this.findByCSSInternal(css);
|
|
@@ -307,7 +344,7 @@ export class Locator {
|
|
|
307
344
|
*/
|
|
308
345
|
async findByTestId() {
|
|
309
346
|
const { testId } = this.target;
|
|
310
|
-
this.log(`使用 data-testid 定位: testId=${testId}`);
|
|
347
|
+
this.log(`使用 data-testid 定位: testId=${testId}${this.nth > 0 ? `, nth=${this.nth}` : ''}`);
|
|
311
348
|
const escaped = escapeCSSAttributeValue(testId);
|
|
312
349
|
return this.findByCSSInternal(`[data-testid="${escaped}"]`);
|
|
313
350
|
}
|
|
@@ -319,6 +356,41 @@ export class Locator {
|
|
|
319
356
|
this.log(`使用 CSS 选择器定位: css=${css}`);
|
|
320
357
|
return this.findByCSSInternal(css);
|
|
321
358
|
}
|
|
359
|
+
/**
|
|
360
|
+
* 通过 CSS + 文本组合定位
|
|
361
|
+
*/
|
|
362
|
+
async findByCSSAndText() {
|
|
363
|
+
const { css, text, exact = false } = this.target;
|
|
364
|
+
this.log(`使用 CSS+text 组合定位: css=${css}, text=${text}, exact=${exact}${this.nth > 0 ?
|
|
365
|
+
`, nth=${this.nth}` :
|
|
366
|
+
''}`);
|
|
367
|
+
const escapedCSS = escapeJSString(css);
|
|
368
|
+
const escapedText = escapeJSString(text);
|
|
369
|
+
const { result } = (await this.send('Runtime.evaluate', {
|
|
370
|
+
expression: `
|
|
371
|
+
(function() {
|
|
372
|
+
const elements = document.querySelectorAll("${escapedCSS}");
|
|
373
|
+
const target = "${escapedText}";
|
|
374
|
+
const isExact = ${exact};
|
|
375
|
+
const nth = ${this.nth};
|
|
376
|
+
let matchCount = 0;
|
|
377
|
+
for (const el of elements) {
|
|
378
|
+
const content = (el.textContent ?? '').trim();
|
|
379
|
+
if (isExact ? content === target : content.includes(target)) {
|
|
380
|
+
if (matchCount < nth) { ++matchCount; continue; }
|
|
381
|
+
return el;
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
return null;
|
|
385
|
+
})()
|
|
386
|
+
`,
|
|
387
|
+
returnByValue: false,
|
|
388
|
+
}));
|
|
389
|
+
if (!result.objectId) {
|
|
390
|
+
throw new ElementNotFoundError(this.target, this.timeout, this.logs, this.getUrl?.());
|
|
391
|
+
}
|
|
392
|
+
return this.objectIdToNodeId(result.objectId);
|
|
393
|
+
}
|
|
322
394
|
/**
|
|
323
395
|
* 通过 XPath 定位
|
|
324
396
|
*/
|
|
@@ -333,6 +405,19 @@ export class Locator {
|
|
|
333
405
|
async findByCSSInternal(css) {
|
|
334
406
|
// 确保 DOM 已启用
|
|
335
407
|
const { root } = (await this.send('DOM.getDocument'));
|
|
408
|
+
if (this.nth > 0) {
|
|
409
|
+
// nth > 0:用 querySelectorAll 取第 nth 个
|
|
410
|
+
const { nodeIds } = (await this.send('DOM.querySelectorAll', {
|
|
411
|
+
nodeId: root.nodeId,
|
|
412
|
+
selector: css,
|
|
413
|
+
}));
|
|
414
|
+
if (this.nth >= nodeIds.length) {
|
|
415
|
+
this.log(`第 ${this.nth} 个匹配元素不存在(共 ${nodeIds.length} 个): ${css}`);
|
|
416
|
+
throw new ElementNotFoundError(this.target, this.timeout, this.logs, this.getUrl?.());
|
|
417
|
+
}
|
|
418
|
+
this.log(`找到元素: nodeId=${nodeIds[this.nth]}(第 ${this.nth} 个)`);
|
|
419
|
+
return nodeIds[this.nth];
|
|
420
|
+
}
|
|
336
421
|
const { nodeId } = (await this.send('DOM.querySelector', {
|
|
337
422
|
nodeId: root.nodeId,
|
|
338
423
|
selector: css,
|
|
@@ -348,9 +433,22 @@ export class Locator {
|
|
|
348
433
|
* XPath 定位内部实现
|
|
349
434
|
*/
|
|
350
435
|
async findByXPathInternal(xpath) {
|
|
436
|
+
const escapedXPath = escapeJSString(xpath);
|
|
437
|
+
if (this.nth > 0) {
|
|
438
|
+
// nth > 0:用 ORDERED_NODE_SNAPSHOT_TYPE 取第 nth 个
|
|
439
|
+
const { result } = (await this.send('Runtime.evaluate', {
|
|
440
|
+
expression: `(function() { var r = document.evaluate('${escapedXPath}', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); return r.snapshotLength > ${this.nth} ? r.snapshotItem(${this.nth}) : null })()`,
|
|
441
|
+
returnByValue: false,
|
|
442
|
+
}));
|
|
443
|
+
if (!result.objectId || result.subtype === 'null') {
|
|
444
|
+
this.log(`第 ${this.nth} 个匹配元素不存在: ${xpath}`);
|
|
445
|
+
throw new ElementNotFoundError(this.target, this.timeout, this.logs, this.getUrl?.());
|
|
446
|
+
}
|
|
447
|
+
return this.objectIdToNodeId(result.objectId);
|
|
448
|
+
}
|
|
351
449
|
// 使用 Runtime.evaluate 执行 XPath
|
|
352
450
|
const { result } = (await this.send('Runtime.evaluate', {
|
|
353
|
-
expression: `document.evaluate('${
|
|
451
|
+
expression: `document.evaluate('${escapedXPath}', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue`,
|
|
354
452
|
returnByValue: false,
|
|
355
453
|
}));
|
|
356
454
|
if (!result.objectId) {
|
|
@@ -363,6 +461,8 @@ export class Locator {
|
|
|
363
461
|
* 将 RemoteObject ID 转换为 NodeId
|
|
364
462
|
*/
|
|
365
463
|
async objectIdToNodeId(objectId) {
|
|
464
|
+
// DOM.requestNode 需要 DOM 树已初始化(通过 DOM.getDocument)
|
|
465
|
+
await this.send('DOM.getDocument');
|
|
366
466
|
const { nodeId } = (await this.send('DOM.requestNode', {
|
|
367
467
|
objectId,
|
|
368
468
|
}));
|
|
@@ -378,7 +478,7 @@ export class Locator {
|
|
|
378
478
|
async getBoxModel(nodeId) {
|
|
379
479
|
const { model } = (await this.send('DOM.getBoxModel', { nodeId }));
|
|
380
480
|
// content 是 [x1,y1, x2,y2, x3,y3, x4,y4] 格式的四个角坐标
|
|
381
|
-
const [x1, y1, x2, , , ,
|
|
481
|
+
const [x1, y1, x2, , , , , y4] = model.content;
|
|
382
482
|
return {
|
|
383
483
|
x: x1,
|
|
384
484
|
y: y1,
|
|
@@ -388,9 +488,18 @@ export class Locator {
|
|
|
388
488
|
}
|
|
389
489
|
/**
|
|
390
490
|
* 发送 CDP 命令
|
|
491
|
+
*
|
|
492
|
+
* 使用 deadline 剩余时间而非静态 timeout,确保单个 CDP 命令不会超出整体预算。
|
|
493
|
+
* withRetry() 在重试间隙检查 deadline,此处保证单命令在当前 tick 内也受预算约束。
|
|
391
494
|
*/
|
|
392
495
|
send(method, params) {
|
|
393
|
-
return this.cdp.send(method, params, this.sessionId);
|
|
496
|
+
return this.cdp.send(method, params, this.sessionId, this.remaining());
|
|
497
|
+
}
|
|
498
|
+
/**
|
|
499
|
+
* deadline 剩余时间(至少 1ms,防止 0 被当作无超时)
|
|
500
|
+
*/
|
|
501
|
+
remaining() {
|
|
502
|
+
return Math.max(1, this.deadline - Date.now());
|
|
394
503
|
}
|
|
395
504
|
/**
|
|
396
505
|
* 记录日志
|
package/dist/core/locator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locator.js","sourceRoot":"","sources":["../../src/core/locator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"locator.js","sourceRoot":"","sources":["../../src/core/locator.ts"],"names":[],"mappings":"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"}
|
package/dist/core/retry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/core/retry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/core/retry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;;;;;GASG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC7B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,GAAE,YAAiB,GAC3B,OAAO,CAAC,CAAC,CAAC,CA2BZ"}
|