@crawlee/core 3.0.0-beta.3 → 3.0.0-beta.30
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 +67 -71
- package/autoscaling/autoscaled_pool.js +1 -1
- package/autoscaling/autoscaled_pool.js.map +1 -1
- package/autoscaling/snapshotter.js +1 -1
- package/configuration.d.ts +1 -2
- package/configuration.d.ts.map +1 -1
- package/configuration.js.map +1 -1
- package/crawlers/crawler_commons.d.ts +8 -3
- package/crawlers/crawler_commons.d.ts.map +1 -1
- package/crawlers/statistics.js +1 -1
- package/crawlers/statistics.js.map +1 -1
- package/enqueue_links/enqueue_links.d.ts +18 -16
- package/enqueue_links/enqueue_links.d.ts.map +1 -1
- package/enqueue_links/enqueue_links.js +13 -13
- package/enqueue_links/enqueue_links.js.map +1 -1
- package/enqueue_links/shared.d.ts +2 -1
- package/enqueue_links/shared.d.ts.map +1 -1
- package/enqueue_links/shared.js +4 -2
- package/enqueue_links/shared.js.map +1 -1
- package/events/local_event_manager.d.ts +1 -2
- package/events/local_event_manager.d.ts.map +1 -1
- package/events/local_event_manager.js +1 -2
- package/events/local_event_manager.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.d.ts.map +1 -1
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/index.mjs +1 -0
- package/package.json +6 -6
- package/request.d.ts +5 -4
- package/request.d.ts.map +1 -1
- package/request.js.map +1 -1
- package/router.d.ts +93 -0
- package/router.d.ts.map +1 -0
- package/router.js +136 -0
- package/router.js.map +1 -0
- package/session_pool/session.d.ts +1 -1
- package/session_pool/session.d.ts.map +1 -1
- package/session_pool/session.js.map +1 -1
- package/session_pool/session_pool.d.ts.map +1 -1
- package/session_pool/session_pool.js.map +1 -1
- package/session_pool/session_utils.d.ts +1 -1
- package/session_pool/session_utils.d.ts.map +1 -1
- package/session_pool/session_utils.js.map +1 -1
- package/storages/dataset.d.ts +30 -5
- package/storages/dataset.d.ts.map +1 -1
- package/storages/dataset.js +31 -3
- package/storages/dataset.js.map +1 -1
- package/storages/key_value_store.d.ts +105 -13
- package/storages/key_value_store.d.ts.map +1 -1
- package/storages/key_value_store.js +112 -12
- package/storages/key_value_store.js.map +1 -1
- package/storages/request_list.d.ts +5 -5
- package/storages/request_list.d.ts.map +1 -1
- package/storages/request_list.js +2 -2
- package/storages/request_list.js.map +1 -1
- package/storages/request_queue.d.ts +5 -5
- package/storages/request_queue.d.ts.map +1 -1
- package/storages/request_queue.js +2 -2
- package/storages/request_queue.js.map +1 -1
- package/storages/storage_manager.d.ts +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/typedefs.d.ts +0 -2
- package/typedefs.d.ts.map +1 -1
- package/typedefs.js.map +1 -1
- package/validators.d.ts +5 -5
- package/validators.d.ts.map +1 -1
- package/validators.js.map +1 -1
|
@@ -13,7 +13,9 @@ var EnqueueStrategy;
|
|
|
13
13
|
*/
|
|
14
14
|
EnqueueStrategy["All"] = "all";
|
|
15
15
|
/**
|
|
16
|
-
* Matches any URLs that have the same subdomain as the base URL
|
|
16
|
+
* Matches any URLs that have the same subdomain as the base URL.
|
|
17
|
+
* For example, `https://wow.example.com/hello` will be matched for a base url of `https://example.com/`, but
|
|
18
|
+
* `https://example.com/hello` will not be matched.
|
|
17
19
|
*/
|
|
18
20
|
EnqueueStrategy["SameSubdomain"] = "same-subdomain";
|
|
19
21
|
/**
|
|
@@ -24,26 +26,22 @@ var EnqueueStrategy;
|
|
|
24
26
|
EnqueueStrategy["SameHostname"] = "same-hostname";
|
|
25
27
|
})(EnqueueStrategy = exports.EnqueueStrategy || (exports.EnqueueStrategy = {}));
|
|
26
28
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* and enqueues the URLs in their `href` attributes to the provided {@link RequestQueue}.
|
|
30
|
-
* If you're looking to find URLs in JavaScript heavy pages where links are not available
|
|
31
|
-
* in `href` elements, but rather navigations are triggered in click handlers
|
|
32
|
-
* see {@link puppeteerUtils.enqueueLinksByClickingElements}.
|
|
29
|
+
* This function enqueues the urls provided to the {@link RequestQueue} provided. If you want to automatically find and enqueue links,
|
|
30
|
+
* you should use the context-aware `enqueueLinks` function provided on the crawler contexts.
|
|
33
31
|
*
|
|
34
|
-
* Optionally, the function allows you to filter the target links' URLs using an array of
|
|
32
|
+
* Optionally, the function allows you to filter the target links' URLs using an array of globs or regular expressions
|
|
35
33
|
* and override settings of the enqueued {@link Request} objects.
|
|
36
34
|
*
|
|
37
35
|
* **Example usage**
|
|
38
36
|
*
|
|
39
37
|
* ```javascript
|
|
40
38
|
* await enqueueLinks({
|
|
41
|
-
*
|
|
39
|
+
* urls: aListOfFoundUrls,
|
|
42
40
|
* requestQueue,
|
|
43
41
|
* selector: 'a.product-detail',
|
|
44
|
-
*
|
|
45
|
-
* 'https://www.example.com/handbags
|
|
46
|
-
* 'https://www.example.com/purses
|
|
42
|
+
* globs: [
|
|
43
|
+
* 'https://www.example.com/handbags/*',
|
|
44
|
+
* 'https://www.example.com/purses/*'
|
|
47
45
|
* ],
|
|
48
46
|
* });
|
|
49
47
|
* ```
|
|
@@ -58,6 +56,8 @@ async function enqueueLinks(options) {
|
|
|
58
56
|
limit: ow_1.default.optional.number,
|
|
59
57
|
selector: ow_1.default.optional.string,
|
|
60
58
|
baseUrl: ow_1.default.optional.string,
|
|
59
|
+
userData: ow_1.default.optional.object,
|
|
60
|
+
label: ow_1.default.optional.string,
|
|
61
61
|
pseudoUrls: ow_1.default.optional.array.ofType(ow_1.default.any(ow_1.default.string, ow_1.default.object.hasKeys('purl'))),
|
|
62
62
|
globs: ow_1.default.optional.array.ofType(ow_1.default.any(ow_1.default.string, ow_1.default.object.hasKeys('glob'))),
|
|
63
63
|
regexps: ow_1.default.optional.array.ofType(ow_1.default.any(ow_1.default.regExp, ow_1.default.object.hasKeys('regexp'))),
|
|
@@ -112,7 +112,7 @@ async function enqueueLinks(options) {
|
|
|
112
112
|
break;
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
-
let requestOptions = (0, shared_1.createRequestOptions)(urls);
|
|
115
|
+
let requestOptions = (0, shared_1.createRequestOptions)(urls, options);
|
|
116
116
|
if (transformRequestFunction) {
|
|
117
117
|
requestOptions = requestOptions.map((request) => transformRequestFunction(request)).filter((r) => !!r);
|
|
118
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enqueue_links.js","sourceRoot":"","sources":["../../src/enqueue_links/enqueue_links.ts"],"names":[],"mappings":";;;;AAAA,iCAAkC;AAClC,oDAAoB;AACpB,6DAA6B;AAE7B,qCAWkB;
|
|
1
|
+
{"version":3,"file":"enqueue_links.js","sourceRoot":"","sources":["../../src/enqueue_links/enqueue_links.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Request, RequestOptions } from '../request';
|
|
2
|
+
import { EnqueueLinksOptions } from './enqueue_links';
|
|
2
3
|
export declare type UrlPatternObject = {
|
|
3
4
|
glob?: string;
|
|
4
5
|
regexp?: RegExp;
|
|
@@ -45,7 +46,7 @@ export declare function createRequests(requestOptions: (string | RequestOptions)
|
|
|
45
46
|
/**
|
|
46
47
|
* @ignore
|
|
47
48
|
*/
|
|
48
|
-
export declare function createRequestOptions(sources: (string | Record<string, unknown>)[]): RequestOptions[];
|
|
49
|
+
export declare function createRequestOptions(sources: (string | Record<string, unknown>)[], options?: Pick<EnqueueLinksOptions, 'label' | 'userData'>): RequestOptions[];
|
|
49
50
|
/**
|
|
50
51
|
* Takes an Apify {@link RequestOptions} object and changes its attributes in a desired way. This user-function is used
|
|
51
52
|
* {@link enqueueLinks} to modify requests before enqueuing them.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/enqueue_links/shared.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/enqueue_links/shared.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAYtD,oBAAY,gBAAgB,GAAG;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAExE,oBAAY,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAErH,oBAAY,cAAc,GAAG,MAAM,GAAG,eAAe,CAAC;AAEtD,oBAAY,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAEhH,oBAAY,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;AAE5C,oBAAY,YAAY,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAEpH,oBAAY,WAAW,GAAG,MAAM,GAAG,YAAY,CAAC;AAEhD;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,cAAc,EAAE,OAAO,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAMvI;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,CAiBjG;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAiB9E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,CAgBxF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,CAAC,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,GAAG,OAAO,EAAE,CAyB7H;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,EAC7C,OAAO,GAAE,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,UAAU,CAAM,GAC9D,cAAc,EAAE,CAelB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;OAGG;IACH,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,GAAG,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC;CACzE"}
|
package/enqueue_links/shared.js
CHANGED
|
@@ -128,7 +128,7 @@ exports.createRequests = createRequests;
|
|
|
128
128
|
/**
|
|
129
129
|
* @ignore
|
|
130
130
|
*/
|
|
131
|
-
function createRequestOptions(sources) {
|
|
131
|
+
function createRequestOptions(sources, options = {}) {
|
|
132
132
|
return sources
|
|
133
133
|
.map((src) => (typeof src === 'string' ? { url: src } : src))
|
|
134
134
|
.filter(({ url }) => {
|
|
@@ -140,7 +140,9 @@ function createRequestOptions(sources) {
|
|
|
140
140
|
}
|
|
141
141
|
})
|
|
142
142
|
.map((requestOptions) => {
|
|
143
|
-
|
|
143
|
+
var _a;
|
|
144
|
+
requestOptions.userData ?? (requestOptions.userData = options.userData ?? {});
|
|
145
|
+
(_a = requestOptions.userData).label ?? (_a.label = options.label);
|
|
144
146
|
return requestOptions;
|
|
145
147
|
});
|
|
146
148
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/enqueue_links/shared.ts"],"names":[],"mappings":";;;;AAAA,6BAA0B;AAC1B,kDAAiD;AACjD,kEAAkC;AAClC,wCAAqD;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/enqueue_links/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,7 @@ import { EventManager } from './event_manager';
|
|
|
2
2
|
export declare class LocalEventManager extends EventManager {
|
|
3
3
|
private previousTicks;
|
|
4
4
|
/**
|
|
5
|
-
* Initializes
|
|
6
|
-
* This is an internal function that is automatically called by `Actor.main()`.
|
|
5
|
+
* Initializes the EventManager and sets up periodic `systemInfo` and `persistState` events.
|
|
7
6
|
*/
|
|
8
7
|
init(): Promise<void>;
|
|
9
8
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local_event_manager.d.ts","sourceRoot":"","sources":["../../src/events/local_event_manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAa,MAAM,iBAAiB,CAAC;AAE1D,qBAAa,iBAAkB,SAAQ,YAAY;IAC/C,OAAO,CAAC,aAAa,CAAyB;IAE9C
|
|
1
|
+
{"version":3,"file":"local_event_manager.d.ts","sourceRoot":"","sources":["../../src/events/local_event_manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAa,MAAM,iBAAiB,CAAC;AAE1D,qBAAa,iBAAkB,SAAQ,YAAY;IAC/C,OAAO,CAAC,aAAa,CAAyB;IAE9C;;OAEG;IACY,IAAI;IAYnB;;;;OAIG;IACY,KAAK;IASpB;;OAEG;IACG,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,OAAO;IAQzD,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;YACW,gBAAgB;IAQ9B,OAAO,CAAC,aAAa;YAaP,gBAAgB;IAc9B;;OAEG;YACW,cAAc;CAG/B"}
|
|
@@ -18,8 +18,7 @@ class LocalEventManager extends event_manager_1.EventManager {
|
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
|
-
* Initializes
|
|
22
|
-
* This is an internal function that is automatically called by `Actor.main()`.
|
|
21
|
+
* Initializes the EventManager and sets up periodic `systemInfo` and `persistState` events.
|
|
23
22
|
*/
|
|
24
23
|
async init() {
|
|
25
24
|
if (this.initialized) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local_event_manager.js","sourceRoot":"","sources":["../../src/events/local_event_manager.ts"],"names":[],"mappings":";;;;AAAA,8DAAyB;AACzB,6DAA6B;AAC7B,gDAA0E;AAC1E,0CAA+C;AAE/C,mDAA0D;AAE1D,MAAa,iBAAkB,SAAQ,4BAAY;IAAnD;;QACI;;;;mBAAwB,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;WAAC;
|
|
1
|
+
{"version":3,"file":"local_event_manager.js","sourceRoot":"","sources":["../../src/events/local_event_manager.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
|
package/index.js
CHANGED
|
@@ -10,6 +10,7 @@ tslib_1.__exportStar(require("./events"), exports);
|
|
|
10
10
|
tslib_1.__exportStar(require("./log"), exports);
|
|
11
11
|
tslib_1.__exportStar(require("./proxy_configuration"), exports);
|
|
12
12
|
tslib_1.__exportStar(require("./request"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./router"), exports);
|
|
13
14
|
tslib_1.__exportStar(require("./serialization"), exports);
|
|
14
15
|
tslib_1.__exportStar(require("./session_pool"), exports);
|
|
15
16
|
tslib_1.__exportStar(require("./storages"), exports);
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,0DAAgC;AAChC,sDAA4B;AAC5B,qDAA2B;AAC3B,0DAAgC;AAChC,mDAAyB;AACzB,gDAAsB;AACtB,gEAAsC;AACtC,oDAA0B;AAC1B,0DAAgC;AAChC,yDAA+B;AAC/B,qDAA2B;AAC3B,uDAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,0DAAgC;AAChC,sDAA4B;AAC5B,qDAA2B;AAC3B,0DAAgC;AAChC,mDAAyB;AACzB,gDAAsB;AACtB,gEAAsC;AACtC,oDAA0B;AAC1B,mDAAyB;AACzB,0DAAgC;AAChC,yDAA+B;AAC/B,qDAA2B;AAC3B,uDAA6B"}
|
package/index.mjs
CHANGED
|
@@ -27,6 +27,7 @@ export const REQUESTS_PERSISTENCE_KEY = mod.REQUESTS_PERSISTENCE_KEY;
|
|
|
27
27
|
export const Request = mod.Request;
|
|
28
28
|
export const RequestList = mod.RequestList;
|
|
29
29
|
export const RequestQueue = mod.RequestQueue;
|
|
30
|
+
export const Router = mod.Router;
|
|
30
31
|
export const STATE_PERSISTENCE_KEY = mod.STATE_PERSISTENCE_KEY;
|
|
31
32
|
export const STATUS_CODES_BLOCKED = mod.STATUS_CODES_BLOCKED;
|
|
32
33
|
export const STORAGE_CONSISTENCY_DELAY_MILLIS = mod.STORAGE_CONSISTENCY_DELAY_MILLIS;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crawlee/core",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.30",
|
|
4
4
|
"description": "The scalable web crawling and scraping library for JavaScript/Node.js. Enables development of data extraction and web automation jobs (not only) with headless Chrome and Puppeteer.",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=16.0.0"
|
|
@@ -55,10 +55,10 @@
|
|
|
55
55
|
"@apify/pseudo_url": "^1.1.4",
|
|
56
56
|
"@apify/timeout": "^0.2.1",
|
|
57
57
|
"@apify/utilities": "^1.2.12",
|
|
58
|
-
"@crawlee/browser-pool": "^3.0.0-beta.
|
|
59
|
-
"@crawlee/memory-storage": "^3.0.0-beta.
|
|
60
|
-
"@crawlee/types": "^3.0.0-beta.
|
|
61
|
-
"@crawlee/utils": "^3.0.0-beta.
|
|
58
|
+
"@crawlee/browser-pool": "^3.0.0-beta.30",
|
|
59
|
+
"@crawlee/memory-storage": "^3.0.0-beta.30",
|
|
60
|
+
"@crawlee/types": "^3.0.0-beta.30",
|
|
61
|
+
"@crawlee/utils": "^3.0.0-beta.30",
|
|
62
62
|
"@types/tough-cookie": "^4.0.2",
|
|
63
63
|
"iconv-lite": "^0.6.3",
|
|
64
64
|
"minimatch": "^5.1.0",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"ws": "^8.7.0"
|
|
71
71
|
},
|
|
72
72
|
"peerDependencies": {
|
|
73
|
-
"puppeteer": ">= 9.x <=
|
|
73
|
+
"puppeteer": ">= 9.x <= 14.x"
|
|
74
74
|
},
|
|
75
75
|
"peerDependenciesMeta": {
|
|
76
76
|
"puppeteer": {
|
package/request.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
+
import { Dictionary } from '@crawlee/types';
|
|
3
4
|
import { BinaryLike } from 'node:crypto';
|
|
4
5
|
import { AllowedHttpMethods } from './typedefs';
|
|
5
6
|
/**
|
|
@@ -30,7 +31,7 @@ import { AllowedHttpMethods } from './typedefs';
|
|
|
30
31
|
* ```
|
|
31
32
|
* @category Sources
|
|
32
33
|
*/
|
|
33
|
-
export declare class Request {
|
|
34
|
+
export declare class Request<UserData extends Dictionary = Dictionary> {
|
|
34
35
|
/** Request ID */
|
|
35
36
|
id?: string;
|
|
36
37
|
/** URL of the web page to crawl. */
|
|
@@ -64,7 +65,7 @@ export declare class Request {
|
|
|
64
65
|
/** Private store for the custom user data assigned to the request. */
|
|
65
66
|
private _userData;
|
|
66
67
|
/** Custom user data assigned to the request. */
|
|
67
|
-
userData:
|
|
68
|
+
userData: UserData;
|
|
68
69
|
/**
|
|
69
70
|
* ISO datetime string that indicates the time when the request has been processed.
|
|
70
71
|
* Is `null` if the request has not been crawled yet.
|
|
@@ -101,7 +102,7 @@ export declare class Request {
|
|
|
101
102
|
/**
|
|
102
103
|
* Specifies required and optional fields for constructing a {@link Request}.
|
|
103
104
|
*/
|
|
104
|
-
export interface RequestOptions {
|
|
105
|
+
export interface RequestOptions<UserData extends Dictionary = Dictionary> {
|
|
105
106
|
/** URL of the web page to crawl. It must be a non-empty string. */
|
|
106
107
|
url: string;
|
|
107
108
|
/**
|
|
@@ -140,7 +141,7 @@ export interface RequestOptions {
|
|
|
140
141
|
* Custom user data assigned to the request. Use this to save any request related data to the
|
|
141
142
|
* request's scope, keeping them accessible on retries, failures etc.
|
|
142
143
|
*/
|
|
143
|
-
userData?:
|
|
144
|
+
userData?: UserData;
|
|
144
145
|
/**
|
|
145
146
|
* If `false` then the hash part of a URL is removed when computing the `uniqueKey` property.
|
|
146
147
|
* For example, this causes the `http://www.example.com#foo` and `http://www.example.com#bar` URLs
|
package/request.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
|
package/request.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
|
package/router.d.ts
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { CrawlingContext } from './crawlers/crawler_commons';
|
|
2
|
+
import { Awaitable } from './typedefs';
|
|
3
|
+
export interface RouterHandler<Context extends CrawlingContext = CrawlingContext> extends Router<Context> {
|
|
4
|
+
(ctx: Context): Awaitable<void>;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Simple router that works based on request labels. This instance can then serve as a `requestHandler` of your crawler.
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { Router, CheerioCrawler, CheerioCrawlingContext } from '@crawlee/cheerio';
|
|
11
|
+
*
|
|
12
|
+
* const router = Router.create<CheerioCrawlingContext>();
|
|
13
|
+
*
|
|
14
|
+
* // we can also use factory methods for specific crawling contexts, the above equals to:
|
|
15
|
+
* // import { createCheerioRouter } from '@crawlee/cheerio';
|
|
16
|
+
* // const router = createCheerioRouter();
|
|
17
|
+
*
|
|
18
|
+
* router.addHandler('label-a', async (ctx) => {
|
|
19
|
+
* ctx.log.info('...');
|
|
20
|
+
* });
|
|
21
|
+
* router.addDefaultHandler(async (ctx) => {
|
|
22
|
+
* ctx.log.info('...');
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* const crawler = new CheerioCrawler({
|
|
26
|
+
* requestHandler: router,
|
|
27
|
+
* });
|
|
28
|
+
* await crawler.run();
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* Alternatively we can use the default router instance from crawler object:
|
|
32
|
+
*
|
|
33
|
+
* ```ts
|
|
34
|
+
* import { CheerioCrawler } from '@crawlee/cheerio';
|
|
35
|
+
*
|
|
36
|
+
* const crawler = new CheerioCrawler();
|
|
37
|
+
*
|
|
38
|
+
* crawler.router.addHandler('label-a', async (ctx) => {
|
|
39
|
+
* ctx.log.info('...');
|
|
40
|
+
* });
|
|
41
|
+
* crawler.router.addDefaultHandler(async (ctx) => {
|
|
42
|
+
* ctx.log.info('...');
|
|
43
|
+
* });
|
|
44
|
+
*
|
|
45
|
+
* await crawler.run();
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export declare class Router<Context extends CrawlingContext> {
|
|
49
|
+
private readonly routes;
|
|
50
|
+
/**
|
|
51
|
+
* use Router.create() instead!
|
|
52
|
+
* @ignore
|
|
53
|
+
*/
|
|
54
|
+
protected constructor();
|
|
55
|
+
/**
|
|
56
|
+
* Registers new route handler for given label.
|
|
57
|
+
*/
|
|
58
|
+
addHandler(label: string | symbol, handler: (ctx: Context) => Awaitable<void>): void;
|
|
59
|
+
/**
|
|
60
|
+
* Registers default route handler.
|
|
61
|
+
*/
|
|
62
|
+
addDefaultHandler(handler: (ctx: Context) => Awaitable<void>): void;
|
|
63
|
+
/**
|
|
64
|
+
* Returns route handler for given label. If no label is provided, the default request handler will be returned.
|
|
65
|
+
*/
|
|
66
|
+
getHandler(label?: string | symbol): (ctx: Context) => Awaitable<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Throws when the label already exists in our registry.
|
|
69
|
+
*/
|
|
70
|
+
private validate;
|
|
71
|
+
/**
|
|
72
|
+
* Creates new router instance. This instance can then serve as a `requestHandler` of your crawler.
|
|
73
|
+
*
|
|
74
|
+
* ```ts
|
|
75
|
+
* import { Router, CheerioCrawler, CheerioCrawlingContext } from '@crawlee/cheerio';
|
|
76
|
+
*
|
|
77
|
+
* const router = Router.create<CheerioCrawlingContext>();
|
|
78
|
+
* router.addHandler('label-a', async (ctx) => {
|
|
79
|
+
* ctx.log.info('...');
|
|
80
|
+
* });
|
|
81
|
+
* router.addDefaultHandler(async (ctx) => {
|
|
82
|
+
* ctx.log.info('...');
|
|
83
|
+
* });
|
|
84
|
+
*
|
|
85
|
+
* const crawler = new CheerioCrawler({
|
|
86
|
+
* requestHandler: router,
|
|
87
|
+
* });
|
|
88
|
+
* await crawler.run();
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
static create<Context extends CrawlingContext = CrawlingContext>(): RouterHandler<Context>;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=router.d.ts.map
|
package/router.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAIvC,MAAM,WAAW,aAAa,CAAC,OAAO,SAAS,eAAe,GAAG,eAAe,CAAE,SAAQ,MAAM,CAAC,OAAO,CAAC;IACrG,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,MAAM,CAAC,OAAO,SAAS,eAAe;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsE;IAE7F;;;OAGG;IACH,SAAS;IAET;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC;IAK7E;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC;IAK5D;;OAEG;IACH,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC;IAgBtE;;OAEG;IACH,OAAO,CAAC,QAAQ;IAShB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,SAAS,eAAe,GAAG,eAAe,KAAK,aAAa,CAAC,OAAO,CAAC;CAkB7F"}
|
package/router.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Router = void 0;
|
|
4
|
+
const defaultRoute = Symbol('default-route');
|
|
5
|
+
/**
|
|
6
|
+
* Simple router that works based on request labels. This instance can then serve as a `requestHandler` of your crawler.
|
|
7
|
+
*
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { Router, CheerioCrawler, CheerioCrawlingContext } from '@crawlee/cheerio';
|
|
10
|
+
*
|
|
11
|
+
* const router = Router.create<CheerioCrawlingContext>();
|
|
12
|
+
*
|
|
13
|
+
* // we can also use factory methods for specific crawling contexts, the above equals to:
|
|
14
|
+
* // import { createCheerioRouter } from '@crawlee/cheerio';
|
|
15
|
+
* // const router = createCheerioRouter();
|
|
16
|
+
*
|
|
17
|
+
* router.addHandler('label-a', async (ctx) => {
|
|
18
|
+
* ctx.log.info('...');
|
|
19
|
+
* });
|
|
20
|
+
* router.addDefaultHandler(async (ctx) => {
|
|
21
|
+
* ctx.log.info('...');
|
|
22
|
+
* });
|
|
23
|
+
*
|
|
24
|
+
* const crawler = new CheerioCrawler({
|
|
25
|
+
* requestHandler: router,
|
|
26
|
+
* });
|
|
27
|
+
* await crawler.run();
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* Alternatively we can use the default router instance from crawler object:
|
|
31
|
+
*
|
|
32
|
+
* ```ts
|
|
33
|
+
* import { CheerioCrawler } from '@crawlee/cheerio';
|
|
34
|
+
*
|
|
35
|
+
* const crawler = new CheerioCrawler();
|
|
36
|
+
*
|
|
37
|
+
* crawler.router.addHandler('label-a', async (ctx) => {
|
|
38
|
+
* ctx.log.info('...');
|
|
39
|
+
* });
|
|
40
|
+
* crawler.router.addDefaultHandler(async (ctx) => {
|
|
41
|
+
* ctx.log.info('...');
|
|
42
|
+
* });
|
|
43
|
+
*
|
|
44
|
+
* await crawler.run();
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
class Router {
|
|
48
|
+
/**
|
|
49
|
+
* use Router.create() instead!
|
|
50
|
+
* @ignore
|
|
51
|
+
*/
|
|
52
|
+
constructor() {
|
|
53
|
+
Object.defineProperty(this, "routes", {
|
|
54
|
+
enumerable: true,
|
|
55
|
+
configurable: true,
|
|
56
|
+
writable: true,
|
|
57
|
+
value: new Map()
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Registers new route handler for given label.
|
|
62
|
+
*/
|
|
63
|
+
addHandler(label, handler) {
|
|
64
|
+
this.validate(label);
|
|
65
|
+
this.routes.set(label, handler);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Registers default route handler.
|
|
69
|
+
*/
|
|
70
|
+
addDefaultHandler(handler) {
|
|
71
|
+
this.validate(defaultRoute);
|
|
72
|
+
this.routes.set(defaultRoute, handler);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Returns route handler for given label. If no label is provided, the default request handler will be returned.
|
|
76
|
+
*/
|
|
77
|
+
getHandler(label) {
|
|
78
|
+
if (label && this.routes.has(label)) {
|
|
79
|
+
return this.routes.get(label);
|
|
80
|
+
}
|
|
81
|
+
if (this.routes.has(defaultRoute)) {
|
|
82
|
+
return this.routes.get(defaultRoute);
|
|
83
|
+
}
|
|
84
|
+
if (!label) {
|
|
85
|
+
throw new Error(`No default route set up!`);
|
|
86
|
+
}
|
|
87
|
+
throw new Error(`Route not found for label '${String(label)}' and no default route set up!`);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Throws when the label already exists in our registry.
|
|
91
|
+
*/
|
|
92
|
+
validate(label) {
|
|
93
|
+
if (this.routes.has(label)) {
|
|
94
|
+
const message = label === defaultRoute
|
|
95
|
+
? `Default route is already defined!`
|
|
96
|
+
: `Route for label '${String(label)}' is already defined!`;
|
|
97
|
+
throw new Error(message);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Creates new router instance. This instance can then serve as a `requestHandler` of your crawler.
|
|
102
|
+
*
|
|
103
|
+
* ```ts
|
|
104
|
+
* import { Router, CheerioCrawler, CheerioCrawlingContext } from '@crawlee/cheerio';
|
|
105
|
+
*
|
|
106
|
+
* const router = Router.create<CheerioCrawlingContext>();
|
|
107
|
+
* router.addHandler('label-a', async (ctx) => {
|
|
108
|
+
* ctx.log.info('...');
|
|
109
|
+
* });
|
|
110
|
+
* router.addDefaultHandler(async (ctx) => {
|
|
111
|
+
* ctx.log.info('...');
|
|
112
|
+
* });
|
|
113
|
+
*
|
|
114
|
+
* const crawler = new CheerioCrawler({
|
|
115
|
+
* requestHandler: router,
|
|
116
|
+
* });
|
|
117
|
+
* await crawler.run();
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
static create() {
|
|
121
|
+
const router = new Router();
|
|
122
|
+
const obj = Object.create(Function.prototype);
|
|
123
|
+
obj.addHandler = router.addHandler.bind(router);
|
|
124
|
+
obj.addDefaultHandler = router.addDefaultHandler.bind(router);
|
|
125
|
+
obj.getHandler = router.getHandler.bind(router);
|
|
126
|
+
const func = function (context) {
|
|
127
|
+
const { url, label } = context.request;
|
|
128
|
+
context.log.info('Page opened.', { label, url });
|
|
129
|
+
return router.getHandler(label)(context);
|
|
130
|
+
};
|
|
131
|
+
Object.setPrototypeOf(func, obj);
|
|
132
|
+
return func;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
exports.Router = Router;
|
|
136
|
+
//# sourceMappingURL=router.js.map
|
package/router.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":";;;AAGA,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAM7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAa,MAAM;IAGf;;;OAGG;IACH;QANA;;;;mBAAmF,IAAI,GAAG,EAAE;WAAC;IAMpE,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,KAAsB,EAAE,OAA0C;QACzE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,OAA0C;QACxD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,KAAuB;QAC9B,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;SAClC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;SACzC;QAED,IAAI,CAAC,KAAK,EAAE;YACR,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;SAC/C;QAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACjG,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,KAAsB;QACnC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACxB,MAAM,OAAO,GAAG,KAAK,KAAK,YAAY;gBAClC,CAAC,CAAC,mCAAmC;gBACrC,CAAC,CAAC,oBAAoB,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;SAC5B;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,MAAM;QACT,MAAM,MAAM,GAAG,IAAI,MAAM,EAAW,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAE9C,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9D,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEhD,MAAM,IAAI,GAAG,UAAU,OAAgB;YACnC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAEjC,OAAO,IAAyC,CAAC;IACrD,CAAC;CACJ;AA9FD,wBA8FC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { Log } from '@apify/log';
|
|
3
3
|
import { Cookie as BrowserPoolCookie } from '@crawlee/browser-pool';
|
|
4
|
+
import { Dictionary } from '@crawlee/types';
|
|
4
5
|
import { IncomingMessage } from 'node:http';
|
|
5
6
|
// @ts-ignore optional peer dependency
|
|
6
7
|
import { HTTPResponse, Protocol } from 'puppeteer';
|
|
7
8
|
import { Cookie, CookieJar } from 'tough-cookie';
|
|
8
|
-
import { Dictionary } from '../typedefs';
|
|
9
9
|
import { SessionPool } from './session_pool';
|
|
10
10
|
export declare type PuppeteerCookie = Protocol.Network.Cookie | BrowserPoolCookie;
|
|
11
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session_pool/session.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session_pool/session.ts"],"names":[],"mappings":"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"}
|