mcp-scraper 0.89.8 → 0.89.9
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/CHANGELOG.md +31 -17
- package/README.md +3 -3
- package/THIRD_PARTY_NOTICES.html +203 -0
- package/dist/bin/api-server.js +1 -1
- package/dist/bin/mcp-scraper-cli.js +1 -1
- package/dist/bin/mcp-scraper-core.js +1 -1
- package/dist/bin/mcp-scraper-install.js +1 -1
- package/dist/bin/mcp-stdio-server.js +1 -1
- package/dist/bin/paa-harvest.js +1 -1
- package/dist/chunk-2PXP7TMY.js +1 -0
- package/dist/chunk-2TZBO52D.js +1 -1
- package/dist/{chunk-TI3KH3YW.js → chunk-2WWKTVCO.js} +1 -1
- package/dist/chunk-4FROKQJN.js +1 -1
- package/dist/chunk-7AC66V3T.js +1 -1
- package/dist/chunk-7BEWBRMT.js +15 -15
- package/dist/chunk-DKQZNSYM.js +15 -15
- package/dist/{chunk-KX72IORC.js → chunk-F4LIB772.js} +8 -8
- package/dist/chunk-M5QHXNFZ.js +3 -3
- package/dist/chunk-PHBU6X5B.js +1 -1
- package/dist/chunk-PVTKGAZL.js +1 -0
- package/dist/{chunk-2BS7MMOS.js → chunk-S3N55WHK.js} +4 -4
- package/dist/{chunk-AGK756UE.js → chunk-XATD7HDY.js} +184 -184
- package/dist/index.cjs +58 -58
- package/dist/index.d.cts +30 -14
- package/dist/index.d.ts +30 -14
- package/dist/index.js +1 -1
- package/dist/{server-PQB2EITA.js → server-EYSV2RRD.js} +415 -415
- package/dist/worker-577GJULQ.js +1 -0
- package/package.json +17 -137
- package/dist/chunk-MM6QBDPC.js +0 -1
- package/dist/chunk-Z3WXA4ZU.js +0 -1
- package/dist/worker-GTIKQJIN.js +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -24,13 +24,13 @@ declare const HarvestOptionsSchema: z.ZodObject<{
|
|
|
24
24
|
headless: z.ZodDefault<z.ZodBoolean>;
|
|
25
25
|
profileDir: z.ZodOptional<z.ZodString>;
|
|
26
26
|
proxy: z.ZodOptional<z.ZodString>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
\u006b\u0065\u0072\u006e\u0065\u006cApiKey: z.ZodOptional<z.ZodString>;
|
|
28
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProxyId: z.ZodOptional<z.ZodString>;
|
|
29
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProfileName: z.ZodOptional<z.ZodString>;
|
|
30
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProfileSaveChanges: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
\u006b\u0065\u0072\u006e\u0065\u006cStealth: z.ZodOptional<z.ZodBoolean>;
|
|
32
32
|
serpIdentity: z.ZodOptional<z.ZodString>;
|
|
33
|
-
|
|
33
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProxyResolution: z.ZodOptional<z.ZodUnknown>;
|
|
34
34
|
outputDir: z.ZodDefault<z.ZodString>;
|
|
35
35
|
format: z.ZodDefault<z.ZodEnum<{
|
|
36
36
|
json: "json";
|
|
@@ -60,7 +60,7 @@ declare const HarvestOptionsSchema: z.ZodObject<{
|
|
|
60
60
|
type CanonicalLocationName = string;
|
|
61
61
|
type SerpDevice = 'desktop' | 'mobile';
|
|
62
62
|
type ProxyMode = 'location' | 'configured' | 'none';
|
|
63
|
-
interface
|
|
63
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cLocationProxyTarget {
|
|
64
64
|
canonicalLocation: CanonicalLocationName;
|
|
65
65
|
level: 'zip' | 'city' | 'state';
|
|
66
66
|
country: 'US';
|
|
@@ -76,14 +76,14 @@ interface KernelLocationProxyTarget {
|
|
|
76
76
|
zip?: string;
|
|
77
77
|
};
|
|
78
78
|
}
|
|
79
|
-
type
|
|
80
|
-
interface
|
|
81
|
-
source:
|
|
79
|
+
type \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionSource = 'disabled' | 'location_reused' | 'location_created' | 'isp_created' | 'backup_custom' | 'configured_fallback' | 'unavailable';
|
|
80
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionDebug {
|
|
81
|
+
source: \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionSource;
|
|
82
82
|
proxyType: string;
|
|
83
83
|
proxyMode: ProxyMode;
|
|
84
84
|
proxyIdPresent: boolean;
|
|
85
85
|
proxyIdSuffix: string | null;
|
|
86
|
-
target:
|
|
86
|
+
target: \u004b\u0065\u0072\u006e\u0065\u006cLocationProxyTarget | null;
|
|
87
87
|
error: string | null;
|
|
88
88
|
disposable?: boolean;
|
|
89
89
|
}
|
|
@@ -129,6 +129,13 @@ interface HarvestInterruptionDiagnostic {
|
|
|
129
129
|
type PaaDiscoveryStatus = 'in_progress' | 'target_reached' | 'frontier_exhausted' | 'no_paa_observed' | 'interrupted' | 'recovery_exhausted';
|
|
130
130
|
type PaaTargetStatus = 'met' | 'not_met';
|
|
131
131
|
type PaaMaterialStatus = 'complete' | 'partial';
|
|
132
|
+
interface PaaRetryBreakdown {
|
|
133
|
+
controlRetries: number;
|
|
134
|
+
browserRetries: number;
|
|
135
|
+
providerFallbacks: number;
|
|
136
|
+
runtimeRecoveries: number;
|
|
137
|
+
idempotentReplays: number;
|
|
138
|
+
}
|
|
132
139
|
interface PaaLifecycleDiagnostics {
|
|
133
140
|
requestedQuestions: number;
|
|
134
141
|
questionsFound: number;
|
|
@@ -137,6 +144,7 @@ interface PaaLifecycleDiagnostics {
|
|
|
137
144
|
materialStatus: PaaMaterialStatus;
|
|
138
145
|
completionReason: string;
|
|
139
146
|
automaticRetries: number;
|
|
147
|
+
retryBreakdown: PaaRetryBreakdown;
|
|
140
148
|
knownQuestions: number;
|
|
141
149
|
processedQuestions: number;
|
|
142
150
|
failedInteractions: number;
|
|
@@ -211,6 +219,14 @@ interface PaaProgressSnapshot {
|
|
|
211
219
|
interactions?: PaaInteractionObservation[];
|
|
212
220
|
}
|
|
213
221
|
interface HarvestDiagnostics {
|
|
222
|
+
phaseTimings?: {
|
|
223
|
+
providerConnectMs?: number;
|
|
224
|
+
navigationMs?: number;
|
|
225
|
+
serpParseMs?: number;
|
|
226
|
+
paaExpansionMs?: number;
|
|
227
|
+
linkResolutionMs?: number;
|
|
228
|
+
totalServerMs: number;
|
|
229
|
+
};
|
|
214
230
|
pagination?: HarvestPaginationDiagnostics;
|
|
215
231
|
completionStatus: HarvestCompletionStatus;
|
|
216
232
|
/** Set only when the extractor directly observed a readable SERP without a PAA block. */
|
|
@@ -249,7 +265,7 @@ interface BrowserNetworkLocationDebug {
|
|
|
249
265
|
timezone: string | null;
|
|
250
266
|
error: string | null;
|
|
251
267
|
}
|
|
252
|
-
interface
|
|
268
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cSessionDebug {
|
|
253
269
|
sessionId: string | null;
|
|
254
270
|
proxyMode: ProxyMode;
|
|
255
271
|
requestedProxyIdPresent: boolean;
|
|
@@ -261,7 +277,7 @@ interface KernelSessionDebug {
|
|
|
261
277
|
retrievedProxyIdMatchesRequested: boolean | null;
|
|
262
278
|
defaultProxyDisabled: boolean | null;
|
|
263
279
|
defaultProxyDisableError: string | null;
|
|
264
|
-
proxyResolution:
|
|
280
|
+
proxyResolution: \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionDebug | null;
|
|
265
281
|
timeoutSeconds: number | null;
|
|
266
282
|
stealth: boolean | null;
|
|
267
283
|
profilePresent: boolean | null;
|
|
@@ -291,7 +307,7 @@ interface SerpNavigationDebug {
|
|
|
291
307
|
redirected: boolean | null;
|
|
292
308
|
}
|
|
293
309
|
interface BrowserDebugSnapshot {
|
|
294
|
-
|
|
310
|
+
\u006b\u0065\u0072\u006e\u0065\u006c: \u004b\u0065\u0072\u006e\u0065\u006cSessionDebug | null;
|
|
295
311
|
context: BrowserContextDebug | null;
|
|
296
312
|
networkLocation: BrowserNetworkLocationDebug | null;
|
|
297
313
|
serpNavigation: SerpNavigationDebug | null;
|
package/dist/index.d.ts
CHANGED
|
@@ -24,13 +24,13 @@ declare const HarvestOptionsSchema: z.ZodObject<{
|
|
|
24
24
|
headless: z.ZodDefault<z.ZodBoolean>;
|
|
25
25
|
profileDir: z.ZodOptional<z.ZodString>;
|
|
26
26
|
proxy: z.ZodOptional<z.ZodString>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
\u006b\u0065\u0072\u006e\u0065\u006cApiKey: z.ZodOptional<z.ZodString>;
|
|
28
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProxyId: z.ZodOptional<z.ZodString>;
|
|
29
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProfileName: z.ZodOptional<z.ZodString>;
|
|
30
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProfileSaveChanges: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
\u006b\u0065\u0072\u006e\u0065\u006cStealth: z.ZodOptional<z.ZodBoolean>;
|
|
32
32
|
serpIdentity: z.ZodOptional<z.ZodString>;
|
|
33
|
-
|
|
33
|
+
\u006b\u0065\u0072\u006e\u0065\u006cProxyResolution: z.ZodOptional<z.ZodUnknown>;
|
|
34
34
|
outputDir: z.ZodDefault<z.ZodString>;
|
|
35
35
|
format: z.ZodDefault<z.ZodEnum<{
|
|
36
36
|
json: "json";
|
|
@@ -60,7 +60,7 @@ declare const HarvestOptionsSchema: z.ZodObject<{
|
|
|
60
60
|
type CanonicalLocationName = string;
|
|
61
61
|
type SerpDevice = 'desktop' | 'mobile';
|
|
62
62
|
type ProxyMode = 'location' | 'configured' | 'none';
|
|
63
|
-
interface
|
|
63
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cLocationProxyTarget {
|
|
64
64
|
canonicalLocation: CanonicalLocationName;
|
|
65
65
|
level: 'zip' | 'city' | 'state';
|
|
66
66
|
country: 'US';
|
|
@@ -76,14 +76,14 @@ interface KernelLocationProxyTarget {
|
|
|
76
76
|
zip?: string;
|
|
77
77
|
};
|
|
78
78
|
}
|
|
79
|
-
type
|
|
80
|
-
interface
|
|
81
|
-
source:
|
|
79
|
+
type \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionSource = 'disabled' | 'location_reused' | 'location_created' | 'isp_created' | 'backup_custom' | 'configured_fallback' | 'unavailable';
|
|
80
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionDebug {
|
|
81
|
+
source: \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionSource;
|
|
82
82
|
proxyType: string;
|
|
83
83
|
proxyMode: ProxyMode;
|
|
84
84
|
proxyIdPresent: boolean;
|
|
85
85
|
proxyIdSuffix: string | null;
|
|
86
|
-
target:
|
|
86
|
+
target: \u004b\u0065\u0072\u006e\u0065\u006cLocationProxyTarget | null;
|
|
87
87
|
error: string | null;
|
|
88
88
|
disposable?: boolean;
|
|
89
89
|
}
|
|
@@ -129,6 +129,13 @@ interface HarvestInterruptionDiagnostic {
|
|
|
129
129
|
type PaaDiscoveryStatus = 'in_progress' | 'target_reached' | 'frontier_exhausted' | 'no_paa_observed' | 'interrupted' | 'recovery_exhausted';
|
|
130
130
|
type PaaTargetStatus = 'met' | 'not_met';
|
|
131
131
|
type PaaMaterialStatus = 'complete' | 'partial';
|
|
132
|
+
interface PaaRetryBreakdown {
|
|
133
|
+
controlRetries: number;
|
|
134
|
+
browserRetries: number;
|
|
135
|
+
providerFallbacks: number;
|
|
136
|
+
runtimeRecoveries: number;
|
|
137
|
+
idempotentReplays: number;
|
|
138
|
+
}
|
|
132
139
|
interface PaaLifecycleDiagnostics {
|
|
133
140
|
requestedQuestions: number;
|
|
134
141
|
questionsFound: number;
|
|
@@ -137,6 +144,7 @@ interface PaaLifecycleDiagnostics {
|
|
|
137
144
|
materialStatus: PaaMaterialStatus;
|
|
138
145
|
completionReason: string;
|
|
139
146
|
automaticRetries: number;
|
|
147
|
+
retryBreakdown: PaaRetryBreakdown;
|
|
140
148
|
knownQuestions: number;
|
|
141
149
|
processedQuestions: number;
|
|
142
150
|
failedInteractions: number;
|
|
@@ -211,6 +219,14 @@ interface PaaProgressSnapshot {
|
|
|
211
219
|
interactions?: PaaInteractionObservation[];
|
|
212
220
|
}
|
|
213
221
|
interface HarvestDiagnostics {
|
|
222
|
+
phaseTimings?: {
|
|
223
|
+
providerConnectMs?: number;
|
|
224
|
+
navigationMs?: number;
|
|
225
|
+
serpParseMs?: number;
|
|
226
|
+
paaExpansionMs?: number;
|
|
227
|
+
linkResolutionMs?: number;
|
|
228
|
+
totalServerMs: number;
|
|
229
|
+
};
|
|
214
230
|
pagination?: HarvestPaginationDiagnostics;
|
|
215
231
|
completionStatus: HarvestCompletionStatus;
|
|
216
232
|
/** Set only when the extractor directly observed a readable SERP without a PAA block. */
|
|
@@ -249,7 +265,7 @@ interface BrowserNetworkLocationDebug {
|
|
|
249
265
|
timezone: string | null;
|
|
250
266
|
error: string | null;
|
|
251
267
|
}
|
|
252
|
-
interface
|
|
268
|
+
interface \u004b\u0065\u0072\u006e\u0065\u006cSessionDebug {
|
|
253
269
|
sessionId: string | null;
|
|
254
270
|
proxyMode: ProxyMode;
|
|
255
271
|
requestedProxyIdPresent: boolean;
|
|
@@ -261,7 +277,7 @@ interface KernelSessionDebug {
|
|
|
261
277
|
retrievedProxyIdMatchesRequested: boolean | null;
|
|
262
278
|
defaultProxyDisabled: boolean | null;
|
|
263
279
|
defaultProxyDisableError: string | null;
|
|
264
|
-
proxyResolution:
|
|
280
|
+
proxyResolution: \u004b\u0065\u0072\u006e\u0065\u006cProxyResolutionDebug | null;
|
|
265
281
|
timeoutSeconds: number | null;
|
|
266
282
|
stealth: boolean | null;
|
|
267
283
|
profilePresent: boolean | null;
|
|
@@ -291,7 +307,7 @@ interface SerpNavigationDebug {
|
|
|
291
307
|
redirected: boolean | null;
|
|
292
308
|
}
|
|
293
309
|
interface BrowserDebugSnapshot {
|
|
294
|
-
|
|
310
|
+
\u006b\u0065\u0072\u006e\u0065\u006c: \u004b\u0065\u0072\u006e\u0065\u006cSessionDebug | null;
|
|
295
311
|
context: BrowserContextDebug | null;
|
|
296
312
|
networkLocation: BrowserNetworkLocationDebug | null;
|
|
297
313
|
serpNavigation: SerpNavigationDebug | null;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{u as z}from"./chunk-
|
|
1
|
+
import{u as z}from"./chunk-F4LIB772.js";import"./chunk-M5QHXNFZ.js";import"./chunk-4FROKQJN.js";import{h as M}from"./chunk-DKQZNSYM.js";import"./chunk-2TZBO52D.js";import"./chunk-2PXP7TMY.js";import"./chunk-7BEWBRMT.js";import{execSync as ce}from"child_process";import{readFileSync as G,writeFileSync as _,unlinkSync as D,mkdirSync as Y}from"fs";import{tmpdir as W}from"os";import{join as l}from"path";import{fal as p}from"@fal-ai/client";var X="https://api.deepinfra.com/v1/openai/chat/completions",L="https://openrouter.ai/api/v1/chat/completions",A="Qwen/Qwen3.6-35B-A3B",Z=`You are a video prompt engineer for Seedance 2.0 text-to-video AI.
|
|
2
2
|
|
|
3
3
|
IMPORTANT TECHNICAL CONTEXT: Clip 2 will be generated using image-to-video, meaning it will start from the exact last frame of Clip 1. The two clips will be visually seamless \u2014 same location, same characters, continuous motion. You must write prompts that make this feel like one uninterrupted 16-second video.
|
|
4
4
|
|