octoparse-cli 0.1.14
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 +271 -0
- package/RUNTIME_SECURITY_NOTICE.txt +41 -0
- package/SECURITY.md +24 -0
- package/dist/cli/args.js +34 -0
- package/dist/cli/help.js +214 -0
- package/dist/cli/output.js +39 -0
- package/dist/commands/auth.js +283 -0
- package/dist/commands/capabilities.js +118 -0
- package/dist/commands/cloud.js +241 -0
- package/dist/commands/data.js +220 -0
- package/dist/commands/doctor.js +73 -0
- package/dist/commands/env.js +63 -0
- package/dist/commands/local.js +251 -0
- package/dist/commands/run.js +622 -0
- package/dist/commands/runs.js +171 -0
- package/dist/commands/task.js +101 -0
- package/dist/index.js +133 -0
- package/dist/runtime/account-capabilities.js +71 -0
- package/dist/runtime/api-client.js +290 -0
- package/dist/runtime/artifacts.js +33 -0
- package/dist/runtime/auth.js +94 -0
- package/dist/runtime/bridge-hub.js +173 -0
- package/dist/runtime/client-headers.js +23 -0
- package/dist/runtime/cloud-data.js +75 -0
- package/dist/runtime/config.js +48 -0
- package/dist/runtime/data-exporter.js +267 -0
- package/dist/runtime/engine-host.js +449 -0
- package/dist/runtime/local-runs.js +92 -0
- package/dist/runtime/naming.js +13 -0
- package/dist/runtime/run-control.js +363 -0
- package/dist/runtime/run-services.js +380 -0
- package/dist/runtime/security-notice.js +78 -0
- package/dist/runtime/task-definition-provider.js +282 -0
- package/dist/types.js +4 -0
- package/examples/minimal-task.json +6 -0
- package/examples/navigate-example-task.json +6 -0
- package/node_modules/@octopus/bpmn/index.js +3 -0
- package/node_modules/@octopus/bpmn/lib/Context.js +245 -0
- package/node_modules/@octopus/bpmn/lib/Definition.js +258 -0
- package/node_modules/@octopus/bpmn/lib/Engine.js +275 -0
- package/node_modules/@octopus/bpmn/lib/PrematureStopError.js +7 -0
- package/node_modules/@octopus/bpmn/lib/activities/Activity.js +202 -0
- package/node_modules/@octopus/bpmn/lib/activities/BaseProcess.js +308 -0
- package/node_modules/@octopus/bpmn/lib/activities/BaseTask.js +145 -0
- package/node_modules/@octopus/bpmn/lib/activities/BoundaryEvent.js +12 -0
- package/node_modules/@octopus/bpmn/lib/activities/Dummy.js +10 -0
- package/node_modules/@octopus/bpmn/lib/activities/EventDefinition.js +99 -0
- package/node_modules/@octopus/bpmn/lib/activities/Flow.js +52 -0
- package/node_modules/@octopus/bpmn/lib/activities/Form.js +67 -0
- package/node_modules/@octopus/bpmn/lib/activities/InputOutput.js +53 -0
- package/node_modules/@octopus/bpmn/lib/activities/IntermediateCatchEvent.js +12 -0
- package/node_modules/@octopus/bpmn/lib/activities/MessageFlow.js +19 -0
- package/node_modules/@octopus/bpmn/lib/activities/MultiInstanceLoopCharacteristics.js +160 -0
- package/node_modules/@octopus/bpmn/lib/activities/Properties.js +27 -0
- package/node_modules/@octopus/bpmn/lib/activities/SequenceFlow.js +56 -0
- package/node_modules/@octopus/bpmn/lib/activities/ServiceConnector.js +71 -0
- package/node_modules/@octopus/bpmn/lib/context-helper.js +198 -0
- package/node_modules/@octopus/bpmn/lib/events/EndEvent.js +22 -0
- package/node_modules/@octopus/bpmn/lib/events/ErrorEvent.js +41 -0
- package/node_modules/@octopus/bpmn/lib/events/MessageEvent.js +19 -0
- package/node_modules/@octopus/bpmn/lib/events/StartEvent.js +55 -0
- package/node_modules/@octopus/bpmn/lib/events/TimerEvent.js +75 -0
- package/node_modules/@octopus/bpmn/lib/expressions.js +41 -0
- package/node_modules/@octopus/bpmn/lib/gateways/ExclusiveGateway.js +86 -0
- package/node_modules/@octopus/bpmn/lib/gateways/InclusiveGateway.js +56 -0
- package/node_modules/@octopus/bpmn/lib/gateways/ParallelGateway.js +195 -0
- package/node_modules/@octopus/bpmn/lib/getPropertyValue.js +83 -0
- package/node_modules/@octopus/bpmn/lib/index.js +6 -0
- package/node_modules/@octopus/bpmn/lib/mapper.js +55 -0
- package/node_modules/@octopus/bpmn/lib/parameter.js +119 -0
- package/node_modules/@octopus/bpmn/lib/script-helper.js +45 -0
- package/node_modules/@octopus/bpmn/lib/tasks/ManualTask.js +31 -0
- package/node_modules/@octopus/bpmn/lib/tasks/ReceiveTask.js +31 -0
- package/node_modules/@octopus/bpmn/lib/tasks/ScriptTask.js +35 -0
- package/node_modules/@octopus/bpmn/lib/tasks/SendTask.js +16 -0
- package/node_modules/@octopus/bpmn/lib/tasks/ServiceTask.js +68 -0
- package/node_modules/@octopus/bpmn/lib/tasks/SubProcess.js +17 -0
- package/node_modules/@octopus/bpmn/lib/tasks/Task.js +16 -0
- package/node_modules/@octopus/bpmn/lib/tasks/UserTask.js +47 -0
- package/node_modules/@octopus/bpmn/lib/transformer.js +13 -0
- package/node_modules/@octopus/bpmn/lib/validation.js +111 -0
- package/node_modules/@octopus/bpmn/package.json +17 -0
- package/node_modules/@octopus/bpmn/types/bpmn.d.ts +85 -0
- package/node_modules/@octopus/engine/README.md +370 -0
- package/node_modules/@octopus/engine/dist/actions/BackPreWebPageAction.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/actions/BackPreWebPageAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/BaseAction.d.ts +339 -0
- package/node_modules/@octopus/engine/dist/actions/BaseAction.js +1559 -0
- package/node_modules/@octopus/engine/dist/actions/BranchAction.d.ts +9 -0
- package/node_modules/@octopus/engine/dist/actions/BranchAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/ClickAction.d.ts +22 -0
- package/node_modules/@octopus/engine/dist/actions/ClickAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/ConditionAction.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/actions/ConditionAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/EmptyAction.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/actions/EmptyAction.js +12 -0
- package/node_modules/@octopus/engine/dist/actions/EnterCaptchaAction.d.ts +28 -0
- package/node_modules/@octopus/engine/dist/actions/EnterCaptchaAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/EnterTextAction.d.ts +20 -0
- package/node_modules/@octopus/engine/dist/actions/EnterTextAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/ExtractDataAction.d.ts +40 -0
- package/node_modules/@octopus/engine/dist/actions/ExtractDataAction.js +1 -0
- package/node_modules/@octopus/engine/dist/actions/LoopAction.d.ts +41 -0
- package/node_modules/@octopus/engine/dist/actions/LoopAction.js +526 -0
- package/node_modules/@octopus/engine/dist/actions/LoopStartAction.d.ts +47 -0
- package/node_modules/@octopus/engine/dist/actions/LoopStartAction.js +607 -0
- package/node_modules/@octopus/engine/dist/actions/MouseOverAction.d.ts +8 -0
- package/node_modules/@octopus/engine/dist/actions/MouseOverAction.js +34 -0
- package/node_modules/@octopus/engine/dist/actions/NavigateAction.d.ts +38 -0
- package/node_modules/@octopus/engine/dist/actions/NavigateAction.js +535 -0
- package/node_modules/@octopus/engine/dist/actions/SwitchComboAction.d.ts +13 -0
- package/node_modules/@octopus/engine/dist/actions/SwitchComboAction.js +69 -0
- package/node_modules/@octopus/engine/dist/browser.d.ts +17 -0
- package/node_modules/@octopus/engine/dist/browser.js +157 -0
- package/node_modules/@octopus/engine/dist/browserProxy.d.ts +90 -0
- package/node_modules/@octopus/engine/dist/browserProxy.js +1 -0
- package/node_modules/@octopus/engine/dist/configs/BaseConfig.d.ts +20 -0
- package/node_modules/@octopus/engine/dist/configs/BaseConfig.js +88 -0
- package/node_modules/@octopus/engine/dist/configs/BranchConfig.d.ts +7 -0
- package/node_modules/@octopus/engine/dist/configs/BranchConfig.js +1 -0
- package/node_modules/@octopus/engine/dist/configs/ClickConfig.d.ts +36 -0
- package/node_modules/@octopus/engine/dist/configs/ClickConfig.js +65 -0
- package/node_modules/@octopus/engine/dist/configs/EnterCaptchaConfig.d.ts +19 -0
- package/node_modules/@octopus/engine/dist/configs/EnterCaptchaConfig.js +25 -0
- package/node_modules/@octopus/engine/dist/configs/EnterTextConfig.d.ts +24 -0
- package/node_modules/@octopus/engine/dist/configs/EnterTextConfig.js +36 -0
- package/node_modules/@octopus/engine/dist/configs/ExtractDataConfig.d.ts +12 -0
- package/node_modules/@octopus/engine/dist/configs/ExtractDataConfig.js +1 -0
- package/node_modules/@octopus/engine/dist/configs/LoopConfig.d.ts +25 -0
- package/node_modules/@octopus/engine/dist/configs/LoopConfig.js +40 -0
- package/node_modules/@octopus/engine/dist/configs/LoopStartConfig.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/configs/LoopStartConfig.js +12 -0
- package/node_modules/@octopus/engine/dist/configs/MouseOverConfig.d.ts +8 -0
- package/node_modules/@octopus/engine/dist/configs/MouseOverConfig.js +15 -0
- package/node_modules/@octopus/engine/dist/configs/NavigateConfig.d.ts +41 -0
- package/node_modules/@octopus/engine/dist/configs/NavigateConfig.js +121 -0
- package/node_modules/@octopus/engine/dist/configs/SwitchComboConfig.d.ts +8 -0
- package/node_modules/@octopus/engine/dist/configs/SwitchComboConfig.js +15 -0
- package/node_modules/@octopus/engine/dist/enums/index.d.ts +419 -0
- package/node_modules/@octopus/engine/dist/enums/index.js +314 -0
- package/node_modules/@octopus/engine/dist/extension/BrowserWebSocketTransport-D_zAGZMQ.js +1 -0
- package/node_modules/@octopus/engine/dist/extension/LaunchOptions-DxvePrV4.js +6 -0
- package/node_modules/@octopus/engine/dist/extension/NodeWebSocketTransport-BTgRVB7Z.js +6 -0
- package/node_modules/@octopus/engine/dist/extension/background.js +396 -0
- package/node_modules/@octopus/engine/dist/extension/bidi-C_GIZ8Uz.js +131 -0
- package/node_modules/@octopus/engine/dist/extension/manifest.json +27 -0
- package/node_modules/@octopus/engine/dist/extension/src/content/anti-detection.js +1 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/BaseExtensionBridge.d.ts +21 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/BaseExtensionBridge.js +117 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/SessionExtensionBridge.d.ts +17 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/SessionExtensionBridge.js +29 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/index.d.ts +2 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/index.js +5 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/types.d.ts +159 -0
- package/node_modules/@octopus/engine/dist/extension-bridge/types.js +5 -0
- package/node_modules/@octopus/engine/dist/extensions/ublock-origin/uBlock0.chromium.tar.xz +0 -0
- package/node_modules/@octopus/engine/dist/extensions/ublock-origin-lite/uBOLite.chromium.tar.xz +0 -0
- package/node_modules/@octopus/engine/dist/index.d.ts +169 -0
- package/node_modules/@octopus/engine/dist/index.js +1 -0
- package/node_modules/@octopus/engine/dist/models/actionItem.d.ts +16 -0
- package/node_modules/@octopus/engine/dist/models/actionItem.js +15 -0
- package/node_modules/@octopus/engine/dist/models/conditionCheckArgs.d.ts +11 -0
- package/node_modules/@octopus/engine/dist/models/conditionCheckArgs.js +11 -0
- package/node_modules/@octopus/engine/dist/models/customizeCookie.d.ts +14 -0
- package/node_modules/@octopus/engine/dist/models/customizeCookie.js +6 -0
- package/node_modules/@octopus/engine/dist/models/downloadFileConfig.d.ts +17 -0
- package/node_modules/@octopus/engine/dist/models/downloadFileConfig.js +26 -0
- package/node_modules/@octopus/engine/dist/models/elementNotFoundArgs.d.ts +8 -0
- package/node_modules/@octopus/engine/dist/models/elementNotFoundArgs.js +12 -0
- package/node_modules/@octopus/engine/dist/models/elementNotFoundError.d.ts +2 -0
- package/node_modules/@octopus/engine/dist/models/elementNotFoundError.js +6 -0
- package/node_modules/@octopus/engine/dist/models/extractItem.d.ts +37 -0
- package/node_modules/@octopus/engine/dist/models/extractItem.js +35 -0
- package/node_modules/@octopus/engine/dist/models/extractTemplate.d.ts +11 -0
- package/node_modules/@octopus/engine/dist/models/extractTemplate.js +48 -0
- package/node_modules/@octopus/engine/dist/models/extractTextItem.d.ts +10 -0
- package/node_modules/@octopus/engine/dist/models/extractTextItem.js +17 -0
- package/node_modules/@octopus/engine/dist/models/globalConfig.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/models/globalConfig.js +1 -0
- package/node_modules/@octopus/engine/dist/models/httpHeader.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/models/httpHeader.js +10 -0
- package/node_modules/@octopus/engine/dist/models/operation.d.ts +27 -0
- package/node_modules/@octopus/engine/dist/models/operation.js +242 -0
- package/node_modules/@octopus/engine/dist/models/retryCondition.d.ts +7 -0
- package/node_modules/@octopus/engine/dist/models/retryCondition.js +10 -0
- package/node_modules/@octopus/engine/dist/models/task.d.ts +89 -0
- package/node_modules/@octopus/engine/dist/models/task.js +120 -0
- package/node_modules/@octopus/engine/dist/models/trigger.d.ts +66 -0
- package/node_modules/@octopus/engine/dist/models/trigger.js +117 -0
- package/node_modules/@octopus/engine/dist/package.json +26 -0
- package/node_modules/@octopus/engine/dist/public-types.d.ts +13 -0
- package/node_modules/@octopus/engine/dist/public-types.js +2 -0
- package/node_modules/@octopus/engine/dist/settings.d.ts +41 -0
- package/node_modules/@octopus/engine/dist/settings.js +20 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/ClickCaptchaSolver.d.ts +6 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/ClickCaptchaSolver.js +1 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/HCaptchaSolver.d.ts +4 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/HCaptchaSolver.js +73 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/ImageCaptchaSolver.d.ts +2 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/ImageCaptchaSolver.js +74 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/RecaptchaSolver.d.ts +9 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/RecaptchaSolver.js +371 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/SliderCaptchaSolver.d.ts +6 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/SliderCaptchaSolver.js +184 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/SlidingTrajectory.d.ts +50 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/SlidingTrajectory.js +125 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/types.d.ts +68 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/types.js +34 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/utils.d.ts +2 -0
- package/node_modules/@octopus/engine/dist/solvers/captcha/utils.js +15 -0
- package/node_modules/@octopus/engine/dist/translator/actionFactory.d.ts +6 -0
- package/node_modules/@octopus/engine/dist/translator/actionFactory.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/activityTypeEnum.d.ts +22 -0
- package/node_modules/@octopus/engine/dist/translator/activityTypeEnum.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/backPreWebPageAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/backPreWebPageAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/baseAction.d.ts +31 -0
- package/node_modules/@octopus/engine/dist/translator/baseAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/breakActivity.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/breakActivity.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/clickAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/clickAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/completeWF.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/completeWF.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/conditionAction.d.ts +6 -0
- package/node_modules/@octopus/engine/dist/translator/conditionAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/emptyAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/emptyAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/enterCapachaAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/enterCapachaAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/enterTextAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/enterTextAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/extractDataAction.d.ts +13 -0
- package/node_modules/@octopus/engine/dist/translator/extractDataAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/loopAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/loopAction.js +1 -0
- package/node_modules/@octopus/engine/dist/translator/mouseOverAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/mouseOverAction.js +19 -0
- package/node_modules/@octopus/engine/dist/translator/navigateAction.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/navigateAction.js +117 -0
- package/node_modules/@octopus/engine/dist/translator/rootAction.d.ts +6 -0
- package/node_modules/@octopus/engine/dist/translator/rootAction.js +80 -0
- package/node_modules/@octopus/engine/dist/translator/switchCombo2Action.d.ts +5 -0
- package/node_modules/@octopus/engine/dist/translator/switchCombo2Action.js +19 -0
- package/node_modules/@octopus/engine/dist/translator/translator.d.ts +1 -0
- package/node_modules/@octopus/engine/dist/translator/translator.js +36 -0
- package/node_modules/@octopus/engine/dist/type.d.ts +25 -0
- package/node_modules/@octopus/engine/dist/type.js +2 -0
- package/node_modules/@octopus/engine/dist/types/browser.d.ts +191 -0
- package/node_modules/@octopus/engine/dist/types/browser.js +1 -0
- package/node_modules/@octopus/engine/dist/types/browserManager.d.ts +41 -0
- package/node_modules/@octopus/engine/dist/types/browserManager.js +1 -0
- package/node_modules/@octopus/engine/dist/types/index.d.ts +40 -0
- package/node_modules/@octopus/engine/dist/types/index.js +2 -0
- package/node_modules/@octopus/engine/dist/types/plugin.d.ts +29 -0
- package/node_modules/@octopus/engine/dist/types/plugin.js +2 -0
- package/node_modules/@octopus/engine/dist/utils/AsyncEmitter.d.ts +15 -0
- package/node_modules/@octopus/engine/dist/utils/AsyncEmitter.js +1 -0
- package/node_modules/@octopus/engine/dist/utils/DataStore.d.ts +58 -0
- package/node_modules/@octopus/engine/dist/utils/DataStore.js +1 -0
- package/node_modules/@octopus/engine/dist/utils/DateTimeFormatHelper.d.ts +22 -0
- package/node_modules/@octopus/engine/dist/utils/DateTimeFormatHelper.js +173 -0
- package/node_modules/@octopus/engine/dist/utils/FileDownloader.d.ts +108 -0
- package/node_modules/@octopus/engine/dist/utils/FileDownloader.js +1 -0
- package/node_modules/@octopus/engine/dist/utils/HttpRequester.d.ts +43 -0
- package/node_modules/@octopus/engine/dist/utils/HttpRequester.js +174 -0
- package/node_modules/@octopus/engine/dist/utils/JsonParser.d.ts +95 -0
- package/node_modules/@octopus/engine/dist/utils/JsonParser.js +439 -0
- package/node_modules/@octopus/engine/dist/utils/Operations.d.ts +27 -0
- package/node_modules/@octopus/engine/dist/utils/Operations.js +115 -0
- package/node_modules/@octopus/engine/dist/utils/index.d.ts +28 -0
- package/node_modules/@octopus/engine/dist/utils/index.js +356 -0
- package/node_modules/@octopus/engine/package.json +58 -0
- package/package.json +79 -0
- package/schemas/capabilities-v1.schema.json +234 -0
- package/schemas/detached-bootstrap-v1.schema.json +42 -0
- package/schemas/json-envelope-v1.schema.json +39 -0
- package/schemas/run-event-v1.schema.json +47 -0
|
@@ -0,0 +1,339 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
import { BrowserProxy } from '../browserProxy';
|
|
3
|
+
import BaseConfig from '../configs/BaseConfig';
|
|
4
|
+
import { ActionType, FuncRetryType, LocalCaptchaType, NavigateType } from '../enums';
|
|
5
|
+
import { ActionItem } from '../models/actionItem';
|
|
6
|
+
import { ConditionCheckArgs } from '../models/conditionCheckArgs';
|
|
7
|
+
import { RetryCondition } from '../models/retryCondition';
|
|
8
|
+
import { ClickCaptchaResult, SlideCaptchaResult } from '@/solvers/captcha/types';
|
|
9
|
+
import type { ProxyMessage, Variables } from '../types';
|
|
10
|
+
import type { Page, Target } from 'puppeteer-core';
|
|
11
|
+
export interface CaptchaParams {
|
|
12
|
+
url: string;
|
|
13
|
+
captchaType: LocalCaptchaType;
|
|
14
|
+
image?: string;
|
|
15
|
+
key?: string;
|
|
16
|
+
action?: string;
|
|
17
|
+
}
|
|
18
|
+
export default class BaseAction {
|
|
19
|
+
protected browserProxy: BrowserProxy;
|
|
20
|
+
protected activity: any;
|
|
21
|
+
protected execution: any;
|
|
22
|
+
protected variables: Variables;
|
|
23
|
+
parent?: BaseAction;
|
|
24
|
+
config: BaseConfig;
|
|
25
|
+
actionTarget: Target;
|
|
26
|
+
/** 单个步骤最长执行时间,超过默认最大时间自动结束当前步骤 (毫秒) */
|
|
27
|
+
executeTimeMax: number;
|
|
28
|
+
/** 步骤类型 */
|
|
29
|
+
type: ActionType;
|
|
30
|
+
protected navigateType: NavigateType;
|
|
31
|
+
get id(): any;
|
|
32
|
+
/** 步骤名 */
|
|
33
|
+
get name(): string;
|
|
34
|
+
get isOpenProxyIp(): boolean;
|
|
35
|
+
get proxyIpSwitchPeriod(): number;
|
|
36
|
+
event: EventEmitter;
|
|
37
|
+
constructor(browserProxy: BrowserProxy, activity: any, execution: any, parent?: BaseAction);
|
|
38
|
+
emit(eventName: string, ...args: any[]): void;
|
|
39
|
+
on(eventName: any, listener: any): void;
|
|
40
|
+
once(eventName: any, listener: any): void;
|
|
41
|
+
log(key: string, ...args: any[]): void;
|
|
42
|
+
error(key: string, ...args: any[]): void;
|
|
43
|
+
resource(key: string, ...args: any[]): void;
|
|
44
|
+
debug(key: string, ...args: any[]): void;
|
|
45
|
+
removeListeners(): void;
|
|
46
|
+
checkPause(): Promise<void>;
|
|
47
|
+
screenshot(): Promise<Uint8Array<ArrayBufferLike> | Buffer<ArrayBuffer>>;
|
|
48
|
+
getCurrentPageUrl(): Promise<string>;
|
|
49
|
+
waitForTarget(timeout: number, options?: {
|
|
50
|
+
signal?: AbortSignal;
|
|
51
|
+
}): Promise<boolean>;
|
|
52
|
+
private setProxy;
|
|
53
|
+
protected collectProxyLog(reason?: string, success?: boolean): Promise<void>;
|
|
54
|
+
protected get shouldWait(): boolean;
|
|
55
|
+
protected set shouldWait(flag: boolean);
|
|
56
|
+
/** 当前可见页面 */
|
|
57
|
+
protected getCurrentPage(): Promise<Page>;
|
|
58
|
+
private waitForDocumentReady;
|
|
59
|
+
private waitForReady;
|
|
60
|
+
protected getContext(): import("puppeteer-core").BrowserContext;
|
|
61
|
+
getProxyIp(): Promise<ProxyMessage>;
|
|
62
|
+
/** 解析步骤配置 */
|
|
63
|
+
protected parseConfig(config: any): BaseConfig;
|
|
64
|
+
/** 首次解析成功后缓存 Page → tabId,后续无需再查 URL */
|
|
65
|
+
private tabIdCache;
|
|
66
|
+
/** 是否应优先使用插件桥接执行操作 */
|
|
67
|
+
protected get useExtensionBridge(): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* 获取当前页面对应的 Extension tabId
|
|
70
|
+
* 首次通过 URL 解析,之后从 WeakMap 缓存读取
|
|
71
|
+
*/
|
|
72
|
+
protected getTabId(): Promise<number | undefined>;
|
|
73
|
+
protected getTabIdForPage(page?: Page): Promise<number | undefined>;
|
|
74
|
+
private runBridgeReadyCheck;
|
|
75
|
+
protected bridgeElementExists(page: Page, actionItem: ActionItem, timeoutMs?: number): Promise<boolean | undefined>;
|
|
76
|
+
locator(page: Page, actionItem: ActionItem): Promise<import("puppeteer-core").Locator<Element>>;
|
|
77
|
+
private getBridgeScrollMode;
|
|
78
|
+
private getScrollLogKey;
|
|
79
|
+
private buildScrollDebugContext;
|
|
80
|
+
private normalizeBridgeScrollReason;
|
|
81
|
+
/** 休眠指定时间 */
|
|
82
|
+
protected sleep(delay?: number): Promise<void>;
|
|
83
|
+
/** 结束当前步骤 */
|
|
84
|
+
protected finish(): void;
|
|
85
|
+
/** 切换代理 IP */
|
|
86
|
+
protected switchIP(page: Page): Promise<void>;
|
|
87
|
+
/** 切换浏览器 UA */
|
|
88
|
+
protected switchUA(): void;
|
|
89
|
+
/** 等待当前网页还在加载的请求完成,每隔 100ms 判定一次,最多判定 100 次,最长等待 10s */
|
|
90
|
+
protected waitRequest(): Promise<void>;
|
|
91
|
+
/** 等待 Ajax 请求完成 */
|
|
92
|
+
ajax(): Promise<void>;
|
|
93
|
+
/** 执行滚动网页 */
|
|
94
|
+
protected scroll(): Promise<void>;
|
|
95
|
+
onPageLoading(url: string): void;
|
|
96
|
+
onPageLoaded(url: string, isTimeout?: boolean): Promise<void>;
|
|
97
|
+
onPageFailLoad(url: string): void;
|
|
98
|
+
onJsonResponse(url: string): Promise<void>;
|
|
99
|
+
onJsonError(url: string): void;
|
|
100
|
+
enter(): void;
|
|
101
|
+
start(): void;
|
|
102
|
+
wait(skipUseLoop?: boolean): Promise<void>;
|
|
103
|
+
waitAfter(): Promise<void>;
|
|
104
|
+
/** 根据验证码类型获取超时时间(毫秒) */
|
|
105
|
+
private getCaptchaTimeout;
|
|
106
|
+
getCaptchaToken(data: {
|
|
107
|
+
url?: string;
|
|
108
|
+
captchaType: LocalCaptchaType;
|
|
109
|
+
image?: string;
|
|
110
|
+
key?: string;
|
|
111
|
+
action?: string;
|
|
112
|
+
}): Promise<string | SlideCaptchaResult | ClickCaptchaResult>;
|
|
113
|
+
end(): void;
|
|
114
|
+
leave(): void;
|
|
115
|
+
executeCaptcha(data: {
|
|
116
|
+
token: string;
|
|
117
|
+
captchaType: LocalCaptchaType;
|
|
118
|
+
}): Promise<void>;
|
|
119
|
+
/** @todo 以下是旧的代码直接迁移过来,待重构 */
|
|
120
|
+
protected getCurrentLoopValue(): any;
|
|
121
|
+
/**
|
|
122
|
+
* 获取指定循环的当前值
|
|
123
|
+
* @param nodeId 这个属性的名称
|
|
124
|
+
*/
|
|
125
|
+
protected getLoopValue(nodeId: string): any;
|
|
126
|
+
/**
|
|
127
|
+
* 获取设置当前loop的url
|
|
128
|
+
* @param nodeId
|
|
129
|
+
* @param val
|
|
130
|
+
*/
|
|
131
|
+
protected setCurrentLoopUrl(nodeId: string, val: any): void;
|
|
132
|
+
/**
|
|
133
|
+
* 获取当前loop所在的url
|
|
134
|
+
* @param nodeId
|
|
135
|
+
* @param val
|
|
136
|
+
*/
|
|
137
|
+
protected getCurrentLoopUrl(nodeId: string): any;
|
|
138
|
+
/**
|
|
139
|
+
* 设置指定循环的当前值
|
|
140
|
+
* @param nodeId
|
|
141
|
+
* @param val
|
|
142
|
+
*/
|
|
143
|
+
protected setCurrentLoopValue(nodeId: string, val: any): void;
|
|
144
|
+
/**
|
|
145
|
+
* 从循环中取出一个对象
|
|
146
|
+
* @param nodeId
|
|
147
|
+
*/
|
|
148
|
+
protected popLoopValue(nodeId: string): any;
|
|
149
|
+
/**
|
|
150
|
+
* 设置该循环数组的值
|
|
151
|
+
* @param nodeId
|
|
152
|
+
* @param dic
|
|
153
|
+
*/
|
|
154
|
+
protected setLoopValues(nodeId: string, dic: any[]): void;
|
|
155
|
+
/**
|
|
156
|
+
* 获取指定循环队列中,已推入的所有内容
|
|
157
|
+
* @param nodeId 指定循环的节点 id
|
|
158
|
+
*/
|
|
159
|
+
protected getLoopValueArray(nodeId: string): any;
|
|
160
|
+
protected pushLoopValue(nodeId: string, val: any): void;
|
|
161
|
+
protected saveSampedLoopRecord(info: any): void;
|
|
162
|
+
protected initSampedLoopRecord(): void;
|
|
163
|
+
protected getSampedLoopRecord(): any;
|
|
164
|
+
/**
|
|
165
|
+
* 统计指定循环列表提取数据步骤,当前已导出的数据条目
|
|
166
|
+
* @param nodeId
|
|
167
|
+
*/
|
|
168
|
+
protected countSomeLoopExtractDataNum(nodeId: string): void;
|
|
169
|
+
/**
|
|
170
|
+
* 初始化指定循环列表提取数据步骤,当前已导出的数据条目为0
|
|
171
|
+
* @param nodeId
|
|
172
|
+
*/
|
|
173
|
+
protected initSomeLoopExtractDataCount(nodeId: string): void;
|
|
174
|
+
/**
|
|
175
|
+
* 获取指定循环列表提取数据步骤,当前已导出的数据条目
|
|
176
|
+
* @param nodeId
|
|
177
|
+
*/
|
|
178
|
+
protected getSomeLoopExtractDataCount(nodeId: string): number;
|
|
179
|
+
/**
|
|
180
|
+
* 设置指定循环列表提取数据步骤,存储的历史采样数据
|
|
181
|
+
* @param nodeId
|
|
182
|
+
* @param val
|
|
183
|
+
*/
|
|
184
|
+
protected setSamplingElementsMap(nodeId: string, val: any): void;
|
|
185
|
+
/**
|
|
186
|
+
* 读取指定循环列表提取数据步骤,存储的历史采样数据
|
|
187
|
+
* @param nodeId
|
|
188
|
+
* @param val
|
|
189
|
+
*/
|
|
190
|
+
protected getSamplingElementsMap(nodeId: string): Map<number, string>;
|
|
191
|
+
/**
|
|
192
|
+
* 初始化指定循环列表提取数据步骤,存储的历史采样数据
|
|
193
|
+
* @param nodeId
|
|
194
|
+
* @param val
|
|
195
|
+
*/
|
|
196
|
+
protected initSamplingElementsMap(nodeId: string): void;
|
|
197
|
+
/**
|
|
198
|
+
* 初始化指定循环列表提取数据步骤,当轮循环提取数据步骤完成后,已采集到的数据条目,用于生成特定的Xpath偏移量
|
|
199
|
+
* @param nodeId
|
|
200
|
+
* @param val
|
|
201
|
+
*/
|
|
202
|
+
protected initIdentifiedEachLoopExtractDataCount(nodeId: string): void;
|
|
203
|
+
/**
|
|
204
|
+
* 设置指定循环列表提取数据步骤,当轮循环提取数据步骤完成后,已采集到的数据条目,用于生成特定的Xpath偏移量
|
|
205
|
+
* @param nodeId
|
|
206
|
+
* @param val
|
|
207
|
+
*/
|
|
208
|
+
protected setIdentifiedEachLoopExtractDataCount(nodeId: string): void;
|
|
209
|
+
/**
|
|
210
|
+
* 读取指定循环列表提取数据步骤,当轮循环提取数据步骤完成后,已采集到的数据条目,用于生成特定的Xpath偏移量
|
|
211
|
+
* @param nodeId
|
|
212
|
+
* @param val
|
|
213
|
+
*/
|
|
214
|
+
protected getIdentifiedEachLoopExtractDataCount(nodeId: string): number;
|
|
215
|
+
protected setNextLoopOffset(nodeId: string, val: number): void;
|
|
216
|
+
protected getNextLoopOffset(nodeId: string): number;
|
|
217
|
+
protected resetNextLoopOffset(nodeId: string): void;
|
|
218
|
+
/**
|
|
219
|
+
* 初始化循环次数
|
|
220
|
+
* @param nodeId 节点id
|
|
221
|
+
*/
|
|
222
|
+
protected initLoopCount(nodeId: string): void;
|
|
223
|
+
/**
|
|
224
|
+
* 累加循环次数
|
|
225
|
+
* @param nodeId 节点id
|
|
226
|
+
*/
|
|
227
|
+
protected addLoopCount(nodeId: string): void;
|
|
228
|
+
/**
|
|
229
|
+
* 获取循环次数
|
|
230
|
+
* @param nodeId 节点id
|
|
231
|
+
*/
|
|
232
|
+
protected getLoopCount(nodeId: string): number;
|
|
233
|
+
/**
|
|
234
|
+
* 初始化连续无效翻页计数
|
|
235
|
+
* @param nodeId 节点id
|
|
236
|
+
*/
|
|
237
|
+
protected initContinuousInvalidPageCount(nodeId: string): void;
|
|
238
|
+
/**
|
|
239
|
+
* 添加连续无效翻页计数
|
|
240
|
+
* @param nodeId 节点id
|
|
241
|
+
*/
|
|
242
|
+
protected addContinuousInvalidPageCount(nodeId: string): void;
|
|
243
|
+
/**
|
|
244
|
+
* 获取连续无效翻页计数
|
|
245
|
+
* @param nodeId 节点id
|
|
246
|
+
*/
|
|
247
|
+
protected getContinuousInvalidPageCount(nodeId: string): number;
|
|
248
|
+
/**
|
|
249
|
+
* 初始化,连续循环点击加载更多按钮,一直没有新数据的循环次数
|
|
250
|
+
* @param nodeId 节点id
|
|
251
|
+
*/
|
|
252
|
+
protected initContinuousClickLoadNoNewDataCount(nodeId: string): void;
|
|
253
|
+
/**
|
|
254
|
+
* 累加,连续循环点击加载更多按钮,一直没有新数据的循环次数
|
|
255
|
+
* @param nodeId 节点id
|
|
256
|
+
*/
|
|
257
|
+
protected addContinuousClickLoadNoNewDataCount(nodeId: string): void;
|
|
258
|
+
/**
|
|
259
|
+
* 获取,连续循环点击加载更多按钮,一直没有新数据的循环次数
|
|
260
|
+
* @param nodeId 节点id
|
|
261
|
+
*/
|
|
262
|
+
protected getContinuousClickLoadNoNewDataCount(nodeId: string): number;
|
|
263
|
+
/**
|
|
264
|
+
* 初始化,连续滚动网页,滚动条高度一只没有变化的循环次数
|
|
265
|
+
* @param nodeId 节点id
|
|
266
|
+
*/
|
|
267
|
+
protected initContinuousScrollTopFixedWebCount(nodeId: string): void;
|
|
268
|
+
/**
|
|
269
|
+
* 累加,连续滚动网页,滚动条高度一只没有变化的循环次数
|
|
270
|
+
* @param nodeId 节点id
|
|
271
|
+
*/
|
|
272
|
+
protected addContinuousScrollTopFixedWebCount(nodeId: string, num?: number): void;
|
|
273
|
+
/**
|
|
274
|
+
* 获取,连续滚动网页,滚动条高度一只没有变化的循环次数
|
|
275
|
+
* @param nodeId 节点id
|
|
276
|
+
*/
|
|
277
|
+
protected getContinuousScrollTopFixedWebCount(nodeId: string): number;
|
|
278
|
+
/**
|
|
279
|
+
* 缓存网页滚动条距离顶部的高度
|
|
280
|
+
* @param nodeId 节点id
|
|
281
|
+
* @param top 网页滚动条距离顶部的高度
|
|
282
|
+
*/
|
|
283
|
+
protected setWebScrollTopTemp(nodeId: string, top: number): void;
|
|
284
|
+
/**
|
|
285
|
+
* 获取网页滚动条距离顶部的高度
|
|
286
|
+
* @param nodeId 节点id
|
|
287
|
+
*/
|
|
288
|
+
protected getWebScrollTopTemp(nodeId: string): number;
|
|
289
|
+
/**
|
|
290
|
+
*
|
|
291
|
+
* @param nodeId
|
|
292
|
+
*/
|
|
293
|
+
protected setWebDocumentHeightTemp(nodeId: string, height: number): void;
|
|
294
|
+
/**
|
|
295
|
+
* 获取到网页高度
|
|
296
|
+
* @param nodeId 节点id
|
|
297
|
+
*/
|
|
298
|
+
protected getWebDocumentHeightTemp(nodeId: string): number;
|
|
299
|
+
/**
|
|
300
|
+
* 设置当前循环是否需要跳过
|
|
301
|
+
* @param nodeId
|
|
302
|
+
* @param isSkip
|
|
303
|
+
* @param isOnlySkipOneLoop
|
|
304
|
+
* @param isClickNotFound
|
|
305
|
+
*/
|
|
306
|
+
protected setIsSkipCurrentLoop(nodeId: string, isSkip: boolean, isOnlySkipOneLoop?: boolean, isClickNotFound?: boolean): void;
|
|
307
|
+
protected getIsClickNotFound(): boolean;
|
|
308
|
+
protected deleteIsSkipCurrentLoop(nodeId: string): void;
|
|
309
|
+
protected setIsSkipActionUtilNextLoop(nodeId: string, isSkip?: boolean): void;
|
|
310
|
+
protected getIsSkipActionUtilNextLoop(nodeId: string): any;
|
|
311
|
+
protected getIsSkiptLoop(nodeId: string): boolean;
|
|
312
|
+
protected getIsSkipCurrentLoop(): boolean;
|
|
313
|
+
protected getIsOnlySkipOneLoop(): boolean;
|
|
314
|
+
protected resetIsOnlySkipOneLoop(): void;
|
|
315
|
+
protected getNodeId(): string;
|
|
316
|
+
/**
|
|
317
|
+
* 加载新页面后设置值(非ajax),为了后面为加载超时做判断依据
|
|
318
|
+
* @param type 当前的状态
|
|
319
|
+
*/
|
|
320
|
+
protected setRetryTypeState(type: FuncRetryType): void;
|
|
321
|
+
/**
|
|
322
|
+
* 获取是否加载的状态,获取后删除存储的状态
|
|
323
|
+
*/
|
|
324
|
+
protected popIsLoadedState(): FuncRetryType;
|
|
325
|
+
/**
|
|
326
|
+
* @param waitItemXpath 等待的xpath
|
|
327
|
+
* @param waitTimeMS 等待的时间 默认20秒
|
|
328
|
+
*/
|
|
329
|
+
protected setPageActionWaitXpathTime(waitItemXpath: string, waitTimeMS?: number): void;
|
|
330
|
+
protected getPageActionWaitXpathTime(waitItemXpath: string): void;
|
|
331
|
+
private loopXpathStrategyMap;
|
|
332
|
+
protected getXpathStrategy(key: string): number;
|
|
333
|
+
protected setXpathStratey(key: string, xpathItem: number): void;
|
|
334
|
+
protected awaitElement(elementXPath: ActionItem): Promise<boolean>;
|
|
335
|
+
protected conditionCheck(e: ConditionCheckArgs, page: Page, skip?: boolean): Promise<boolean>;
|
|
336
|
+
protected extractElementData(actionItem: ActionItem, extractFn: (ele: HTMLElement) => string, page: Page): Promise<any>;
|
|
337
|
+
protected checkPageContains({ conditionType, containsOrNot, mainValue, minorValue }: RetryCondition, page: Page): Promise<boolean>;
|
|
338
|
+
protected checkJSONContains(retryCondition: RetryCondition): boolean;
|
|
339
|
+
}
|