@iflyrpa/playwright 1.0.5 → 1.0.7
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/dist/index.cjs +61 -43
- package/dist/index.d.cts +10 -2
- package/dist/index.d.mts +10 -2
- package/dist/index.d.ts +10 -2
- package/dist/index.mjs +61 -43
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -18,7 +18,7 @@ const spawn__default = /*#__PURE__*/_interopDefaultCompat(spawn);
|
|
|
18
18
|
|
|
19
19
|
const name = "@iflyrpa/playwright";
|
|
20
20
|
const type = "module";
|
|
21
|
-
const version$1 = "1.0.
|
|
21
|
+
const version$1 = "1.0.7";
|
|
22
22
|
const description = "";
|
|
23
23
|
const main = "./dist/index.cjs";
|
|
24
24
|
const module$1 = "./dist/index.mjs";
|
|
@@ -138,49 +138,56 @@ const xiaohongshuPublishAction = async (props) => {
|
|
|
138
138
|
const container = page.locator(".creator-container .content .scroll-content");
|
|
139
139
|
await container.focus();
|
|
140
140
|
await page.mouse.wheel(0, 500);
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
if (params.selfDeclaration.
|
|
155
|
-
await
|
|
156
|
-
} else if (params.selfDeclaration.
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
if (
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
);
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
141
|
+
if (params.address) {
|
|
142
|
+
await selectAddress(
|
|
143
|
+
".media-extension .address-input input[placeholder=\u6DFB\u52A0\u5730\u70B9]",
|
|
144
|
+
params.address
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
if (params.selfDeclaration) {
|
|
148
|
+
await page.locator(".declaration-wrapper").click();
|
|
149
|
+
const selfDeclarationInstance = page.locator(
|
|
150
|
+
".el-popper[aria-hidden=false] ul li[role=menuitem]"
|
|
151
|
+
);
|
|
152
|
+
if (params.selfDeclaration.type === "fictional-rendition") {
|
|
153
|
+
await selfDeclarationInstance.filter({ hasText: "\u865A\u6784\u6F14\u7ECE\uFF0C\u4EC5\u4F9B\u5A31\u4E50" }).click();
|
|
154
|
+
} else if (params.selfDeclaration.type === "ai-generated") {
|
|
155
|
+
await selfDeclarationInstance.filter({ hasText: "\u7B14\u8BB0\u542BAI\u5408\u6210\u5185\u5BB9" }).click();
|
|
156
|
+
} else if (params.selfDeclaration.type === "source-statement") {
|
|
157
|
+
await selfDeclarationInstance.filter({ hasText: "\u5185\u5BB9\u6765\u6E90\u58F0\u660E" }).click();
|
|
158
|
+
const selfDeclarationSecondaryMenuInstance = page.locator(".el-popper[aria-hidden=false] .el-cascader-menu").nth(1).locator("ul li[role=menuitem]");
|
|
159
|
+
await selfDeclarationSecondaryMenuInstance.first().waitFor();
|
|
160
|
+
if (params.selfDeclaration.childType === "self-labeling") {
|
|
161
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u5DF2\u81EA\u4E3B\u6807\u6CE8" }).click();
|
|
162
|
+
} else if (params.selfDeclaration.childType === "self-shooting") {
|
|
163
|
+
const { shootingDate, shootingLocation } = params.selfDeclaration;
|
|
164
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u81EA\u4E3B\u62CD\u6444" }).click();
|
|
165
|
+
const selfShootingPopup = page.locator(".el-overlay-dialog[aria-modal=true][role=dialog]").filter({ hasText: "\u81EA\u4E3B\u62CD\u6444" });
|
|
166
|
+
await selfShootingPopup.waitFor();
|
|
167
|
+
const hasCustomContent = shootingDate || shootingLocation;
|
|
168
|
+
if (shootingLocation) {
|
|
169
|
+
await selectAddress(
|
|
170
|
+
selfShootingPopup.locator(".address-input input"),
|
|
171
|
+
shootingLocation
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
if (shootingDate) {
|
|
175
|
+
await selectDate(
|
|
176
|
+
selfShootingPopup.locator(".date-picker input"),
|
|
177
|
+
shootingDate
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
await selfShootingPopup.locator("footer button").filter({ hasText: hasCustomContent ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
181
|
+
} else if (params.selfDeclaration.childType === "transshipment") {
|
|
182
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u6765\u6E90\u8F6C\u8F7D" }).click();
|
|
183
|
+
const selfShootingPopup = page.locator(".el-overlay-dialog[aria-modal=true][role=dialog]").filter({ hasText: "\u6765\u6E90\u5A92\u4F53" });
|
|
184
|
+
await selfShootingPopup.waitFor();
|
|
185
|
+
const sourceMedia = params.selfDeclaration.sourceMedia;
|
|
186
|
+
if (sourceMedia) {
|
|
187
|
+
await selfShootingPopup.locator(".el-input input").fill(sourceMedia);
|
|
188
|
+
}
|
|
189
|
+
await selfShootingPopup.locator("footer button").filter({ hasText: sourceMedia ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
182
190
|
}
|
|
183
|
-
await selfShootingPopup.locator("footer button").filter({ hasText: sourceMedia ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
184
191
|
}
|
|
185
192
|
}
|
|
186
193
|
const publicLabelInstance = page.locator("label").filter({ hasText: visibleRangeTexts[params.visibleRange] });
|
|
@@ -349,6 +356,17 @@ class LocalAutomateTask {
|
|
|
349
356
|
this.debug = params.debug || false;
|
|
350
357
|
this.appWhenReady = createElectronApp(params.cachePath);
|
|
351
358
|
}
|
|
359
|
+
/**
|
|
360
|
+
* 关闭 playwright 启动的 electron 客户端
|
|
361
|
+
* @returns
|
|
362
|
+
*/
|
|
363
|
+
async close() {
|
|
364
|
+
const electronApp = await this.appWhenReady;
|
|
365
|
+
return electronApp.close();
|
|
366
|
+
}
|
|
367
|
+
/**
|
|
368
|
+
* 小红书自动化发布
|
|
369
|
+
*/
|
|
352
370
|
async xiaohongshuPublish(params) {
|
|
353
371
|
const electronApp = await this.appWhenReady;
|
|
354
372
|
const commonCookies = {
|
package/dist/index.d.cts
CHANGED
|
@@ -32,8 +32,8 @@ interface XiaohonshuPublishParams
|
|
|
32
32
|
banners: string[]; // 图片
|
|
33
33
|
title: string; // 标题
|
|
34
34
|
content: string; // 正文
|
|
35
|
-
address
|
|
36
|
-
selfDeclaration
|
|
35
|
+
address?: string; // 地点
|
|
36
|
+
selfDeclaration?: SelfDeclaration; // 自主声明
|
|
37
37
|
visibleRange: "public" | "private"; // 可见范围
|
|
38
38
|
isImmediatelyPublish?: boolean; // 是否立即发布
|
|
39
39
|
scheduledPublish?: string; // 定时发布时间
|
|
@@ -48,6 +48,14 @@ declare class LocalAutomateTask implements TaskParams {
|
|
|
48
48
|
debug: boolean;
|
|
49
49
|
appWhenReady: Promise<ElectronApplication>;
|
|
50
50
|
constructor(params: TaskParams);
|
|
51
|
+
/**
|
|
52
|
+
* 关闭 playwright 启动的 electron 客户端
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
close(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* 小红书自动化发布
|
|
58
|
+
*/
|
|
51
59
|
xiaohongshuPublish(params: XiaohonshuPublishParams): Promise<string>;
|
|
52
60
|
}
|
|
53
61
|
declare const RpaTask: (params: TaskParams) => LocalAutomateTask;
|
package/dist/index.d.mts
CHANGED
|
@@ -32,8 +32,8 @@ interface XiaohonshuPublishParams
|
|
|
32
32
|
banners: string[]; // 图片
|
|
33
33
|
title: string; // 标题
|
|
34
34
|
content: string; // 正文
|
|
35
|
-
address
|
|
36
|
-
selfDeclaration
|
|
35
|
+
address?: string; // 地点
|
|
36
|
+
selfDeclaration?: SelfDeclaration; // 自主声明
|
|
37
37
|
visibleRange: "public" | "private"; // 可见范围
|
|
38
38
|
isImmediatelyPublish?: boolean; // 是否立即发布
|
|
39
39
|
scheduledPublish?: string; // 定时发布时间
|
|
@@ -48,6 +48,14 @@ declare class LocalAutomateTask implements TaskParams {
|
|
|
48
48
|
debug: boolean;
|
|
49
49
|
appWhenReady: Promise<ElectronApplication>;
|
|
50
50
|
constructor(params: TaskParams);
|
|
51
|
+
/**
|
|
52
|
+
* 关闭 playwright 启动的 electron 客户端
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
close(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* 小红书自动化发布
|
|
58
|
+
*/
|
|
51
59
|
xiaohongshuPublish(params: XiaohonshuPublishParams): Promise<string>;
|
|
52
60
|
}
|
|
53
61
|
declare const RpaTask: (params: TaskParams) => LocalAutomateTask;
|
package/dist/index.d.ts
CHANGED
|
@@ -32,8 +32,8 @@ interface XiaohonshuPublishParams
|
|
|
32
32
|
banners: string[]; // 图片
|
|
33
33
|
title: string; // 标题
|
|
34
34
|
content: string; // 正文
|
|
35
|
-
address
|
|
36
|
-
selfDeclaration
|
|
35
|
+
address?: string; // 地点
|
|
36
|
+
selfDeclaration?: SelfDeclaration; // 自主声明
|
|
37
37
|
visibleRange: "public" | "private"; // 可见范围
|
|
38
38
|
isImmediatelyPublish?: boolean; // 是否立即发布
|
|
39
39
|
scheduledPublish?: string; // 定时发布时间
|
|
@@ -48,6 +48,14 @@ declare class LocalAutomateTask implements TaskParams {
|
|
|
48
48
|
debug: boolean;
|
|
49
49
|
appWhenReady: Promise<ElectronApplication>;
|
|
50
50
|
constructor(params: TaskParams);
|
|
51
|
+
/**
|
|
52
|
+
* 关闭 playwright 启动的 electron 客户端
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
close(): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* 小红书自动化发布
|
|
58
|
+
*/
|
|
51
59
|
xiaohongshuPublish(params: XiaohonshuPublishParams): Promise<string>;
|
|
52
60
|
}
|
|
53
61
|
declare const RpaTask: (params: TaskParams) => LocalAutomateTask;
|
package/dist/index.mjs
CHANGED
|
@@ -8,7 +8,7 @@ import spawn from 'cross-spawn';
|
|
|
8
8
|
|
|
9
9
|
const name = "@iflyrpa/playwright";
|
|
10
10
|
const type = "module";
|
|
11
|
-
const version$1 = "1.0.
|
|
11
|
+
const version$1 = "1.0.7";
|
|
12
12
|
const description = "";
|
|
13
13
|
const main = "./dist/index.cjs";
|
|
14
14
|
const module = "./dist/index.mjs";
|
|
@@ -128,49 +128,56 @@ const xiaohongshuPublishAction = async (props) => {
|
|
|
128
128
|
const container = page.locator(".creator-container .content .scroll-content");
|
|
129
129
|
await container.focus();
|
|
130
130
|
await page.mouse.wheel(0, 500);
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
if (params.selfDeclaration.
|
|
145
|
-
await
|
|
146
|
-
} else if (params.selfDeclaration.
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
if (
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
);
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
131
|
+
if (params.address) {
|
|
132
|
+
await selectAddress(
|
|
133
|
+
".media-extension .address-input input[placeholder=\u6DFB\u52A0\u5730\u70B9]",
|
|
134
|
+
params.address
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
|
+
if (params.selfDeclaration) {
|
|
138
|
+
await page.locator(".declaration-wrapper").click();
|
|
139
|
+
const selfDeclarationInstance = page.locator(
|
|
140
|
+
".el-popper[aria-hidden=false] ul li[role=menuitem]"
|
|
141
|
+
);
|
|
142
|
+
if (params.selfDeclaration.type === "fictional-rendition") {
|
|
143
|
+
await selfDeclarationInstance.filter({ hasText: "\u865A\u6784\u6F14\u7ECE\uFF0C\u4EC5\u4F9B\u5A31\u4E50" }).click();
|
|
144
|
+
} else if (params.selfDeclaration.type === "ai-generated") {
|
|
145
|
+
await selfDeclarationInstance.filter({ hasText: "\u7B14\u8BB0\u542BAI\u5408\u6210\u5185\u5BB9" }).click();
|
|
146
|
+
} else if (params.selfDeclaration.type === "source-statement") {
|
|
147
|
+
await selfDeclarationInstance.filter({ hasText: "\u5185\u5BB9\u6765\u6E90\u58F0\u660E" }).click();
|
|
148
|
+
const selfDeclarationSecondaryMenuInstance = page.locator(".el-popper[aria-hidden=false] .el-cascader-menu").nth(1).locator("ul li[role=menuitem]");
|
|
149
|
+
await selfDeclarationSecondaryMenuInstance.first().waitFor();
|
|
150
|
+
if (params.selfDeclaration.childType === "self-labeling") {
|
|
151
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u5DF2\u81EA\u4E3B\u6807\u6CE8" }).click();
|
|
152
|
+
} else if (params.selfDeclaration.childType === "self-shooting") {
|
|
153
|
+
const { shootingDate, shootingLocation } = params.selfDeclaration;
|
|
154
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u81EA\u4E3B\u62CD\u6444" }).click();
|
|
155
|
+
const selfShootingPopup = page.locator(".el-overlay-dialog[aria-modal=true][role=dialog]").filter({ hasText: "\u81EA\u4E3B\u62CD\u6444" });
|
|
156
|
+
await selfShootingPopup.waitFor();
|
|
157
|
+
const hasCustomContent = shootingDate || shootingLocation;
|
|
158
|
+
if (shootingLocation) {
|
|
159
|
+
await selectAddress(
|
|
160
|
+
selfShootingPopup.locator(".address-input input"),
|
|
161
|
+
shootingLocation
|
|
162
|
+
);
|
|
163
|
+
}
|
|
164
|
+
if (shootingDate) {
|
|
165
|
+
await selectDate(
|
|
166
|
+
selfShootingPopup.locator(".date-picker input"),
|
|
167
|
+
shootingDate
|
|
168
|
+
);
|
|
169
|
+
}
|
|
170
|
+
await selfShootingPopup.locator("footer button").filter({ hasText: hasCustomContent ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
171
|
+
} else if (params.selfDeclaration.childType === "transshipment") {
|
|
172
|
+
await selfDeclarationSecondaryMenuInstance.filter({ hasText: "\u6765\u6E90\u8F6C\u8F7D" }).click();
|
|
173
|
+
const selfShootingPopup = page.locator(".el-overlay-dialog[aria-modal=true][role=dialog]").filter({ hasText: "\u6765\u6E90\u5A92\u4F53" });
|
|
174
|
+
await selfShootingPopup.waitFor();
|
|
175
|
+
const sourceMedia = params.selfDeclaration.sourceMedia;
|
|
176
|
+
if (sourceMedia) {
|
|
177
|
+
await selfShootingPopup.locator(".el-input input").fill(sourceMedia);
|
|
178
|
+
}
|
|
179
|
+
await selfShootingPopup.locator("footer button").filter({ hasText: sourceMedia ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
172
180
|
}
|
|
173
|
-
await selfShootingPopup.locator("footer button").filter({ hasText: sourceMedia ? "\u786E\u8BA4" : "\u53D6\u6D88" }).click();
|
|
174
181
|
}
|
|
175
182
|
}
|
|
176
183
|
const publicLabelInstance = page.locator("label").filter({ hasText: visibleRangeTexts[params.visibleRange] });
|
|
@@ -339,6 +346,17 @@ class LocalAutomateTask {
|
|
|
339
346
|
this.debug = params.debug || false;
|
|
340
347
|
this.appWhenReady = createElectronApp(params.cachePath);
|
|
341
348
|
}
|
|
349
|
+
/**
|
|
350
|
+
* 关闭 playwright 启动的 electron 客户端
|
|
351
|
+
* @returns
|
|
352
|
+
*/
|
|
353
|
+
async close() {
|
|
354
|
+
const electronApp = await this.appWhenReady;
|
|
355
|
+
return electronApp.close();
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* 小红书自动化发布
|
|
359
|
+
*/
|
|
342
360
|
async xiaohongshuPublish(params) {
|
|
343
361
|
const electronApp = await this.appWhenReady;
|
|
344
362
|
const commonCookies = {
|