@crawlee/core 3.13.5 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/autoscaling/autoscaled_pool.d.ts +3 -3
  2. package/autoscaling/autoscaled_pool.d.ts.map +1 -1
  3. package/autoscaling/autoscaled_pool.js +76 -225
  4. package/autoscaling/autoscaled_pool.js.map +1 -1
  5. package/autoscaling/index.d.ts +3 -3
  6. package/autoscaling/index.d.ts.map +1 -1
  7. package/autoscaling/index.js +3 -6
  8. package/autoscaling/index.js.map +1 -1
  9. package/autoscaling/snapshotter.d.ts +3 -3
  10. package/autoscaling/snapshotter.d.ts.map +1 -1
  11. package/autoscaling/snapshotter.js +42 -137
  12. package/autoscaling/snapshotter.js.map +1 -1
  13. package/autoscaling/system_status.d.ts +2 -2
  14. package/autoscaling/system_status.d.ts.map +1 -1
  15. package/autoscaling/system_status.js +20 -55
  16. package/autoscaling/system_status.js.map +1 -1
  17. package/configuration.d.ts +4 -4
  18. package/configuration.d.ts.map +1 -1
  19. package/configuration.js +79 -126
  20. package/configuration.js.map +1 -1
  21. package/cookie_utils.js +17 -25
  22. package/cookie_utils.js.map +1 -1
  23. package/crawlers/crawler_commons.d.ts +9 -8
  24. package/crawlers/crawler_commons.d.ts.map +1 -1
  25. package/crawlers/crawler_commons.js +47 -121
  26. package/crawlers/crawler_commons.js.map +1 -1
  27. package/crawlers/crawler_extension.d.ts +1 -1
  28. package/crawlers/crawler_extension.d.ts.map +1 -1
  29. package/crawlers/crawler_extension.js +4 -20
  30. package/crawlers/crawler_extension.js.map +1 -1
  31. package/crawlers/crawler_utils.d.ts +1 -1
  32. package/crawlers/crawler_utils.d.ts.map +1 -1
  33. package/crawlers/crawler_utils.js +3 -6
  34. package/crawlers/crawler_utils.js.map +1 -1
  35. package/crawlers/error_snapshotter.d.ts +3 -3
  36. package/crawlers/error_snapshotter.d.ts.map +1 -1
  37. package/crawlers/error_snapshotter.js +8 -38
  38. package/crawlers/error_snapshotter.js.map +1 -1
  39. package/crawlers/error_tracker.d.ts +2 -2
  40. package/crawlers/error_tracker.d.ts.map +1 -1
  41. package/crawlers/error_tracker.js +18 -40
  42. package/crawlers/error_tracker.js.map +1 -1
  43. package/crawlers/index.d.ts +6 -6
  44. package/crawlers/index.d.ts.map +1 -1
  45. package/crawlers/index.js +6 -9
  46. package/crawlers/index.js.map +1 -1
  47. package/crawlers/statistics.d.ts +3 -3
  48. package/crawlers/statistics.d.ts.map +1 -1
  49. package/crawlers/statistics.js +59 -167
  50. package/crawlers/statistics.js.map +1 -1
  51. package/enqueue_links/enqueue_links.d.ts +2 -2
  52. package/enqueue_links/enqueue_links.d.ts.map +1 -1
  53. package/enqueue_links/enqueue_links.js +41 -47
  54. package/enqueue_links/enqueue_links.js.map +1 -1
  55. package/enqueue_links/index.d.ts +2 -2
  56. package/enqueue_links/index.d.ts.map +1 -1
  57. package/enqueue_links/index.js +2 -5
  58. package/enqueue_links/index.js.map +1 -1
  59. package/enqueue_links/shared.d.ts +4 -4
  60. package/enqueue_links/shared.d.ts.map +1 -1
  61. package/enqueue_links/shared.js +23 -35
  62. package/enqueue_links/shared.js.map +1 -1
  63. package/errors.js +5 -13
  64. package/errors.js.map +1 -1
  65. package/events/event_manager.d.ts +1 -1
  66. package/events/event_manager.d.ts.map +1 -1
  67. package/events/event_manager.js +16 -45
  68. package/events/event_manager.js.map +1 -1
  69. package/events/index.d.ts +2 -2
  70. package/events/index.d.ts.map +1 -1
  71. package/events/index.js +2 -5
  72. package/events/index.js.map +1 -1
  73. package/events/local_event_manager.d.ts +1 -1
  74. package/events/local_event_manager.d.ts.map +1 -1
  75. package/events/local_event_manager.js +15 -28
  76. package/events/local_event_manager.js.map +1 -1
  77. package/http_clients/base-http-client.d.ts +1 -1
  78. package/http_clients/base-http-client.d.ts.map +1 -1
  79. package/http_clients/base-http-client.js +5 -8
  80. package/http_clients/base-http-client.js.map +1 -1
  81. package/http_clients/form-data-like.js +1 -2
  82. package/http_clients/form-data-like.js.map +1 -1
  83. package/http_clients/got-scraping-http-client.d.ts +1 -1
  84. package/http_clients/got-scraping-http-client.d.ts.map +1 -1
  85. package/http_clients/got-scraping-http-client.js +6 -11
  86. package/http_clients/got-scraping-http-client.js.map +1 -1
  87. package/http_clients/index.d.ts +2 -2
  88. package/http_clients/index.d.ts.map +1 -1
  89. package/http_clients/index.js +2 -5
  90. package/http_clients/index.js.map +1 -1
  91. package/index.d.ts +16 -16
  92. package/index.d.ts.map +1 -1
  93. package/index.js +17 -22
  94. package/index.js.map +1 -1
  95. package/log.js +2 -11
  96. package/log.js.map +1 -1
  97. package/package.json +27 -33
  98. package/proxy_configuration.d.ts +1 -1
  99. package/proxy_configuration.d.ts.map +1 -1
  100. package/proxy_configuration.js +22 -78
  101. package/proxy_configuration.js.map +1 -1
  102. package/request.d.ts +2 -2
  103. package/request.d.ts.map +1 -1
  104. package/request.js +76 -147
  105. package/request.js.map +1 -1
  106. package/router.d.ts +3 -3
  107. package/router.d.ts.map +1 -1
  108. package/router.js +6 -21
  109. package/router.js.map +1 -1
  110. package/serialization.d.ts.map +1 -1
  111. package/serialization.js +22 -44
  112. package/serialization.js.map +1 -1
  113. package/session_pool/consts.js +3 -6
  114. package/session_pool/consts.js.map +1 -1
  115. package/session_pool/errors.js +3 -11
  116. package/session_pool/errors.js.map +1 -1
  117. package/session_pool/events.js +1 -4
  118. package/session_pool/events.js.map +1 -1
  119. package/session_pool/index.d.ts +5 -5
  120. package/session_pool/index.d.ts.map +1 -1
  121. package/session_pool/index.js +5 -8
  122. package/session_pool/index.js.map +1 -1
  123. package/session_pool/session.d.ts +3 -17
  124. package/session_pool/session.d.ts.map +1 -1
  125. package/session_pool/session.js +52 -116
  126. package/session_pool/session.js.map +1 -1
  127. package/session_pool/session_pool.d.ts +7 -7
  128. package/session_pool/session_pool.d.ts.map +1 -1
  129. package/session_pool/session_pool.js +42 -126
  130. package/session_pool/session_pool.js.map +1 -1
  131. package/storages/access_checking.d.ts +1 -1
  132. package/storages/access_checking.d.ts.map +1 -1
  133. package/storages/access_checking.js +4 -9
  134. package/storages/access_checking.js.map +1 -1
  135. package/storages/dataset.d.ts +4 -4
  136. package/storages/dataset.d.ts.map +1 -1
  137. package/storages/dataset.js +45 -76
  138. package/storages/dataset.js.map +1 -1
  139. package/storages/index.d.ts +11 -11
  140. package/storages/index.d.ts.map +1 -1
  141. package/storages/index.js +11 -18
  142. package/storages/index.js.map +1 -1
  143. package/storages/key_value_store.d.ts +3 -3
  144. package/storages/key_value_store.d.ts.map +1 -1
  145. package/storages/key_value_store.js +62 -102
  146. package/storages/key_value_store.js.map +1 -1
  147. package/storages/request_list.d.ts +3 -3
  148. package/storages/request_list.d.ts.map +1 -1
  149. package/storages/request_list.js +83 -183
  150. package/storages/request_list.js.map +1 -1
  151. package/storages/request_provider.d.ts +5 -5
  152. package/storages/request_provider.d.ts.map +1 -1
  153. package/storages/request_provider.js +97 -201
  154. package/storages/request_provider.js.map +1 -1
  155. package/storages/request_queue.d.ts +4 -4
  156. package/storages/request_queue.d.ts.map +1 -1
  157. package/storages/request_queue.js +27 -40
  158. package/storages/request_queue.js.map +1 -1
  159. package/storages/request_queue_v2.d.ts +4 -4
  160. package/storages/request_queue_v2.d.ts.map +1 -1
  161. package/storages/request_queue_v2.js +18 -42
  162. package/storages/request_queue_v2.js.map +1 -1
  163. package/storages/sitemap_request_list.d.ts +4 -4
  164. package/storages/sitemap_request_list.d.ts.map +1 -1
  165. package/storages/sitemap_request_list.js +96 -181
  166. package/storages/sitemap_request_list.js.map +1 -1
  167. package/storages/storage_manager.d.ts +3 -3
  168. package/storages/storage_manager.d.ts.map +1 -1
  169. package/storages/storage_manager.js +14 -42
  170. package/storages/storage_manager.js.map +1 -1
  171. package/storages/utils.d.ts +1 -1
  172. package/storages/utils.d.ts.map +1 -1
  173. package/storages/utils.js +16 -23
  174. package/storages/utils.js.map +1 -1
  175. package/tsconfig.build.tsbuildinfo +1 -1
  176. package/typedefs.js +2 -6
  177. package/typedefs.js.map +1 -1
  178. package/validators.js +6 -10
  179. package/validators.js.map +1 -1
  180. package/index.mjs +0 -88
package/configuration.js CHANGED
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Configuration = void 0;
4
- const tslib_1 = require("tslib");
5
- const node_async_hooks_1 = require("node:async_hooks");
6
- const node_events_1 = require("node:events");
7
- const node_path_1 = require("node:path");
8
- const memory_storage_1 = require("@crawlee/memory-storage");
9
- const fs_extra_1 = require("fs-extra");
10
- const log_1 = tslib_1.__importStar(require("@apify/log"));
11
- const events_1 = require("./events");
12
- const typedefs_1 = require("./typedefs");
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ import { EventEmitter } from 'node:events';
3
+ import { readFileSync } from 'node:fs';
4
+ import { join } from 'node:path';
5
+ import { MemoryStorage } from '@crawlee/memory-storage';
6
+ import { pathExistsSync } from 'fs-extra/esm';
7
+ import log, { LogLevel } from '@apify/log';
8
+ import { LocalEventManager } from './events/local_event_manager.js';
9
+ import { entries } from './typedefs.js';
13
10
  /**
14
11
  * `Configuration` is a value object holding Crawlee configuration. By default, there is a
15
12
  * global singleton instance of this class available via `Configuration.getGlobalConfig()`.
@@ -76,39 +73,79 @@ const typedefs_1 = require("./typedefs");
76
73
  * `systemInfoV2` | `CRAWLEE_SYSTEM_INFO_V2` | false
77
74
  * `containerized | `CRAWLEE_CONTAINERIZED | -
78
75
  */
79
- class Configuration {
76
+ export class Configuration {
77
+ /**
78
+ * Maps environment variables to config keys (e.g. `CRAWLEE_MEMORY_MBYTES` to `memoryMbytes`)
79
+ */
80
+ static ENV_MAP = {
81
+ CRAWLEE_AVAILABLE_MEMORY_RATIO: 'availableMemoryRatio',
82
+ CRAWLEE_PURGE_ON_START: 'purgeOnStart',
83
+ CRAWLEE_MEMORY_MBYTES: 'memoryMbytes',
84
+ CRAWLEE_DEFAULT_DATASET_ID: 'defaultDatasetId',
85
+ CRAWLEE_DEFAULT_KEY_VALUE_STORE_ID: 'defaultKeyValueStoreId',
86
+ CRAWLEE_DEFAULT_REQUEST_QUEUE_ID: 'defaultRequestQueueId',
87
+ CRAWLEE_INPUT_KEY: 'inputKey',
88
+ CRAWLEE_PERSIST_STATE_INTERVAL_MILLIS: 'persistStateIntervalMillis',
89
+ CRAWLEE_HEADLESS: 'headless',
90
+ CRAWLEE_XVFB: 'xvfb',
91
+ CRAWLEE_CHROME_EXECUTABLE_PATH: 'chromeExecutablePath',
92
+ CRAWLEE_DEFAULT_BROWSER_PATH: 'defaultBrowserPath',
93
+ CRAWLEE_DISABLE_BROWSER_SANDBOX: 'disableBrowserSandbox',
94
+ CRAWLEE_LOG_LEVEL: 'logLevel',
95
+ CRAWLEE_PERSIST_STORAGE: 'persistStorage',
96
+ CRAWLEE_SYSTEM_INFO_V2: 'systemInfoV2',
97
+ CRAWLEE_CONTAINERIZED: 'containerized',
98
+ };
99
+ static BOOLEAN_VARS = [
100
+ 'purgeOnStart',
101
+ 'headless',
102
+ 'xvfb',
103
+ 'disableBrowserSandbox',
104
+ 'persistStorage',
105
+ 'systemInfoV2',
106
+ 'containerized',
107
+ ];
108
+ static INTEGER_VARS = ['memoryMbytes', 'persistStateIntervalMillis', 'systemInfoIntervalMillis'];
109
+ static COMMA_SEPARATED_LIST_VARS = [];
110
+ static DEFAULTS = {
111
+ defaultKeyValueStoreId: 'default',
112
+ defaultDatasetId: 'default',
113
+ defaultRequestQueueId: 'default',
114
+ inputKey: 'INPUT',
115
+ maxUsedCpuRatio: 0.95,
116
+ availableMemoryRatio: 0.25,
117
+ storageClientOptions: {},
118
+ purgeOnStart: true,
119
+ headless: true,
120
+ persistStateIntervalMillis: 60_000,
121
+ systemInfoIntervalMillis: 1_000,
122
+ persistStorage: true,
123
+ systemInfoV2: false,
124
+ };
125
+ /**
126
+ * Provides access to the current-instance-scoped Configuration without passing it around in parameters.
127
+ * @internal
128
+ */
129
+ static storage = new AsyncLocalStorage();
130
+ options;
131
+ services = new Map();
132
+ /** @internal */
133
+ static globalConfig;
134
+ storageManagers = new Map();
80
135
  /**
81
136
  * Creates new `Configuration` instance with provided options. Env vars will have precedence over those.
82
137
  */
83
138
  constructor(options = {}) {
84
- Object.defineProperty(this, "options", {
85
- enumerable: true,
86
- configurable: true,
87
- writable: true,
88
- value: void 0
89
- });
90
- Object.defineProperty(this, "services", {
91
- enumerable: true,
92
- configurable: true,
93
- writable: true,
94
- value: new Map()
95
- });
96
- Object.defineProperty(this, "storageManagers", {
97
- enumerable: true,
98
- configurable: true,
99
- writable: true,
100
- value: new Map()
101
- });
102
139
  this.buildOptions(options);
103
140
  // Increase the global limit for event emitter memory leak warnings.
104
- node_events_1.EventEmitter.defaultMaxListeners = 50;
141
+ EventEmitter.defaultMaxListeners = 50;
105
142
  // set the log level to support CRAWLEE_ prefixed env var too
106
143
  const logLevel = this.get('logLevel');
107
144
  if (logLevel) {
108
145
  const level = Number.isFinite(+logLevel)
109
146
  ? +logLevel
110
- : log_1.LogLevel[String(logLevel).toUpperCase()];
111
- log_1.default.setLevel(level);
147
+ : LogLevel[String(logLevel).toUpperCase()];
148
+ log.setLevel(level);
112
149
  }
113
150
  }
114
151
  /**
@@ -119,7 +156,7 @@ class Configuration {
119
156
  get(key, defaultValue) {
120
157
  // prefer env vars, always iterate through the whole map as there might be duplicate env vars for the same option
121
158
  let envValue;
122
- for (const [k, v] of (0, typedefs_1.entries)(Configuration.ENV_MAP)) {
159
+ for (const [k, v] of entries(Configuration.ENV_MAP)) {
123
160
  if (key === v) {
124
161
  envValue = process.env[k];
125
162
  if (envValue) {
@@ -191,7 +228,7 @@ class Configuration {
191
228
  if (this.services.has('eventManager')) {
192
229
  return this.services.get('eventManager');
193
230
  }
194
- const eventManager = new events_1.LocalEventManager(this);
231
+ const eventManager = new LocalEventManager(this);
195
232
  this.services.set('eventManager', eventManager);
196
233
  return eventManager;
197
234
  }
@@ -204,7 +241,7 @@ class Configuration {
204
241
  if (this.services.has(cacheKey)) {
205
242
  return this.services.get(cacheKey);
206
243
  }
207
- const storage = new memory_storage_1.MemoryStorage({
244
+ const storage = new MemoryStorage({
208
245
  persistStorage: this.get('persistStorage'),
209
246
  // Override persistStorage if user provides it via storageClientOptions
210
247
  ...options,
@@ -228,7 +265,7 @@ class Configuration {
228
265
  if (Configuration.storage.getStore()) {
229
266
  return Configuration.storage.getStore();
230
267
  }
231
- Configuration.globalConfig ?? (Configuration.globalConfig = new Configuration());
268
+ Configuration.globalConfig ??= new Configuration();
232
269
  return Configuration.globalConfig;
233
270
  }
234
271
  /**
@@ -252,10 +289,10 @@ class Configuration {
252
289
  }
253
290
  buildOptions(options) {
254
291
  // try to load configuration from crawlee.json as the baseline
255
- const path = (0, node_path_1.join)(process.cwd(), 'crawlee.json');
256
- if ((0, fs_extra_1.pathExistsSync)(path)) {
292
+ const path = join(process.cwd(), 'crawlee.json');
293
+ if (pathExistsSync(path)) {
257
294
  try {
258
- const file = (0, fs_extra_1.readFileSync)(path);
295
+ const file = readFileSync(path);
259
296
  const optionsFromFileConfig = JSON.parse(file.toString());
260
297
  Object.assign(options, optionsFromFileConfig);
261
298
  }
@@ -263,91 +300,7 @@ class Configuration {
263
300
  // ignore
264
301
  }
265
302
  }
266
- this.options = new Map((0, typedefs_1.entries)(options));
303
+ this.options = new Map(entries(options));
267
304
  }
268
305
  }
269
- exports.Configuration = Configuration;
270
- /**
271
- * Maps environment variables to config keys (e.g. `CRAWLEE_MEMORY_MBYTES` to `memoryMbytes`)
272
- */
273
- Object.defineProperty(Configuration, "ENV_MAP", {
274
- enumerable: true,
275
- configurable: true,
276
- writable: true,
277
- value: {
278
- CRAWLEE_AVAILABLE_MEMORY_RATIO: 'availableMemoryRatio',
279
- CRAWLEE_PURGE_ON_START: 'purgeOnStart',
280
- CRAWLEE_MEMORY_MBYTES: 'memoryMbytes',
281
- CRAWLEE_DEFAULT_DATASET_ID: 'defaultDatasetId',
282
- CRAWLEE_DEFAULT_KEY_VALUE_STORE_ID: 'defaultKeyValueStoreId',
283
- CRAWLEE_DEFAULT_REQUEST_QUEUE_ID: 'defaultRequestQueueId',
284
- CRAWLEE_INPUT_KEY: 'inputKey',
285
- CRAWLEE_PERSIST_STATE_INTERVAL_MILLIS: 'persistStateIntervalMillis',
286
- CRAWLEE_HEADLESS: 'headless',
287
- CRAWLEE_XVFB: 'xvfb',
288
- CRAWLEE_CHROME_EXECUTABLE_PATH: 'chromeExecutablePath',
289
- CRAWLEE_DEFAULT_BROWSER_PATH: 'defaultBrowserPath',
290
- CRAWLEE_DISABLE_BROWSER_SANDBOX: 'disableBrowserSandbox',
291
- CRAWLEE_LOG_LEVEL: 'logLevel',
292
- CRAWLEE_PERSIST_STORAGE: 'persistStorage',
293
- CRAWLEE_SYSTEM_INFO_V2: 'systemInfoV2',
294
- CRAWLEE_CONTAINERIZED: 'containerized',
295
- }
296
- });
297
- Object.defineProperty(Configuration, "BOOLEAN_VARS", {
298
- enumerable: true,
299
- configurable: true,
300
- writable: true,
301
- value: [
302
- 'purgeOnStart',
303
- 'headless',
304
- 'xvfb',
305
- 'disableBrowserSandbox',
306
- 'persistStorage',
307
- 'systemInfoV2',
308
- 'containerized',
309
- ]
310
- });
311
- Object.defineProperty(Configuration, "INTEGER_VARS", {
312
- enumerable: true,
313
- configurable: true,
314
- writable: true,
315
- value: ['memoryMbytes', 'persistStateIntervalMillis', 'systemInfoIntervalMillis']
316
- });
317
- Object.defineProperty(Configuration, "COMMA_SEPARATED_LIST_VARS", {
318
- enumerable: true,
319
- configurable: true,
320
- writable: true,
321
- value: []
322
- });
323
- Object.defineProperty(Configuration, "DEFAULTS", {
324
- enumerable: true,
325
- configurable: true,
326
- writable: true,
327
- value: {
328
- defaultKeyValueStoreId: 'default',
329
- defaultDatasetId: 'default',
330
- defaultRequestQueueId: 'default',
331
- inputKey: 'INPUT',
332
- maxUsedCpuRatio: 0.95,
333
- availableMemoryRatio: 0.25,
334
- storageClientOptions: {},
335
- purgeOnStart: true,
336
- headless: true,
337
- persistStateIntervalMillis: 60000,
338
- systemInfoIntervalMillis: 1000,
339
- persistStorage: true,
340
- systemInfoV2: false,
341
- }
342
- });
343
- /**
344
- * Provides access to the current-instance-scoped Configuration without passing it around in parameters.
345
- * @internal
346
- */
347
- Object.defineProperty(Configuration, "storage", {
348
- enumerable: true,
349
- configurable: true,
350
- writable: true,
351
- value: new node_async_hooks_1.AsyncLocalStorage()
352
- });
353
306
  //# sourceMappingURL=configuration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../src/configuration.ts"],"names":[],"mappings":"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"}
package/cookie_utils.js CHANGED
@@ -1,27 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCookiesFromResponse = getCookiesFromResponse;
4
- exports.getDefaultCookieExpirationDate = getDefaultCookieExpirationDate;
5
- exports.toughCookieToBrowserPoolCookie = toughCookieToBrowserPoolCookie;
6
- exports.browserPoolCookieToToughCookie = browserPoolCookieToToughCookie;
7
- exports.cookieStringToToughCookie = cookieStringToToughCookie;
8
- exports.mergeCookies = mergeCookies;
9
- const tough_cookie_1 = require("tough-cookie");
10
- const log_1 = require("./log");
11
- const errors_1 = require("./session_pool/errors");
1
+ import { Cookie, CookieJar } from 'tough-cookie';
2
+ import { log } from './log.js';
3
+ import { CookieParseError } from './session_pool/errors.js';
12
4
  /**
13
5
  * @internal
14
6
  */
15
- function getCookiesFromResponse(response) {
7
+ export function getCookiesFromResponse(response) {
16
8
  const headers = typeof response.headers === 'function' ? response.headers() : response.headers;
17
9
  const cookieHeader = headers?.['set-cookie'] || '';
18
10
  try {
19
11
  return Array.isArray(cookieHeader)
20
- ? cookieHeader.map((cookie) => tough_cookie_1.Cookie.parse(cookie))
21
- : [tough_cookie_1.Cookie.parse(cookieHeader)];
12
+ ? cookieHeader.map((cookie) => Cookie.parse(cookie))
13
+ : [Cookie.parse(cookieHeader)];
22
14
  }
23
15
  catch (e) {
24
- throw new errors_1.CookieParseError(cookieHeader);
16
+ throw new CookieParseError(cookieHeader);
25
17
  }
26
18
  }
27
19
  /**
@@ -30,7 +22,7 @@ function getCookiesFromResponse(response) {
30
22
  * @returns Calculated date by session max age seconds.
31
23
  * @internal
32
24
  */
33
- function getDefaultCookieExpirationDate(maxAgeSecs) {
25
+ export function getDefaultCookieExpirationDate(maxAgeSecs) {
34
26
  return new Date(Date.now() + maxAgeSecs * 1000);
35
27
  }
36
28
  /**
@@ -39,7 +31,7 @@ function getDefaultCookieExpirationDate(maxAgeSecs) {
39
31
  * @return Cookie compatible with browser pool
40
32
  * @internal
41
33
  */
42
- function toughCookieToBrowserPoolCookie(toughCookie) {
34
+ export function toughCookieToBrowserPoolCookie(toughCookie) {
43
35
  return {
44
36
  name: toughCookie.key,
45
37
  value: toughCookie.value,
@@ -59,14 +51,14 @@ function toughCookieToBrowserPoolCookie(toughCookie) {
59
51
  * @param cookieObject Cookie object (for instance from the `page.cookies` method).
60
52
  * @internal
61
53
  */
62
- function browserPoolCookieToToughCookie(cookieObject, maxAgeSecs) {
54
+ export function browserPoolCookieToToughCookie(cookieObject, maxAgeSecs) {
63
55
  const isExpiresValid = cookieObject.expires && typeof cookieObject.expires === 'number' && cookieObject.expires > 0;
64
56
  const expires = isExpiresValid
65
57
  ? new Date(cookieObject.expires * 1000)
66
58
  : getDefaultCookieExpirationDate(maxAgeSecs);
67
59
  const domainHasLeadingDot = cookieObject.domain?.startsWith?.('.');
68
60
  const domain = domainHasLeadingDot ? cookieObject.domain?.slice?.(1) : cookieObject.domain;
69
- return new tough_cookie_1.Cookie({
61
+ return new Cookie({
70
62
  key: cookieObject.name,
71
63
  value: cookieObject.value,
72
64
  expires,
@@ -82,8 +74,8 @@ function browserPoolCookieToToughCookie(cookieObject, maxAgeSecs) {
82
74
  * @param cookieString The cookie string to attempt parsing
83
75
  * @returns Browser pool compatible cookie, or null if cookie cannot be parsed
84
76
  */
85
- function cookieStringToToughCookie(cookieString) {
86
- const parsed = tough_cookie_1.Cookie.parse(cookieString);
77
+ export function cookieStringToToughCookie(cookieString) {
78
+ const parsed = Cookie.parse(cookieString);
87
79
  if (parsed) {
88
80
  return toughCookieToBrowserPoolCookie(parsed);
89
81
  }
@@ -94,8 +86,8 @@ function cookieStringToToughCookie(cookieString) {
94
86
  * if we see two cookies with same keys but different casing.
95
87
  * @internal
96
88
  */
97
- function mergeCookies(url, sourceCookies) {
98
- const jar = new tough_cookie_1.CookieJar();
89
+ export function mergeCookies(url, sourceCookies) {
90
+ const jar = new CookieJar();
99
91
  // ignore empty cookies
100
92
  for (const sourceCookieString of sourceCookies) {
101
93
  // ignore empty cookies
@@ -106,12 +98,12 @@ function mergeCookies(url, sourceCookies) {
106
98
  // ignore extra spaces
107
99
  if (!cookieString)
108
100
  continue;
109
- const cookie = tough_cookie_1.Cookie.parse(cookieString);
101
+ const cookie = Cookie.parse(cookieString);
110
102
  const similarKeyCookie = jar.getCookiesSync(url).find((c) => {
111
103
  return cookie.key !== c.key && cookie.key.toLowerCase() === c.key.toLowerCase();
112
104
  });
113
105
  if (similarKeyCookie) {
114
- log_1.log.deprecated(`Found cookies with similar name during cookie merging: '${cookie.key}' and '${similarKeyCookie.key}'`);
106
+ log.warningOnce(`Found cookies with similar name during cookie merging: '${cookie.key}' and '${similarKeyCookie.key}'`);
115
107
  }
116
108
  jar.setCookieSync(cookie, url);
117
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cookie_utils.js","sourceRoot":"","sources":["../src/cookie_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookie_utils.js","sourceRoot":"","sources":["../src/cookie_utils.ts"],"names":[],"mappings":"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"}
@@ -2,14 +2,15 @@ import type { BatchAddRequestsResult, Dictionary } from '@crawlee/types';
2
2
  // @ts-ignore optional peer dependency or compatibility with es2022
3
3
  import type { OptionsInit, Response as GotResponse } from 'got-scraping';
4
4
  import type { ReadonlyDeep } from 'type-fest';
5
- import type { Configuration } from '../configuration';
6
- import type { EnqueueLinksOptions } from '../enqueue_links/enqueue_links';
7
- import type { Log } from '../log';
8
- import type { ProxyInfo } from '../proxy_configuration';
9
- import type { Request, Source } from '../request';
10
- import type { Session } from '../session_pool/session';
11
- import type { Dataset, RecordOptions, RequestQueueOperationOptions } from '../storages';
12
- import { KeyValueStore } from '../storages';
5
+ import type { Configuration } from '../configuration.js';
6
+ import type { EnqueueLinksOptions } from '../enqueue_links/enqueue_links.js';
7
+ import type { Log } from '../log.js';
8
+ import type { ProxyInfo } from '../proxy_configuration.js';
9
+ import type { Request, Source } from '../request.js';
10
+ import type { Session } from '../session_pool/session.js';
11
+ import type { Dataset } from '../storages/dataset.js';
12
+ import { KeyValueStore, type RecordOptions } from '../storages/key_value_store.js';
13
+ import type { RequestQueueOperationOptions } from '../storages/request_provider.js';
13
14
  /** @internal */
14
15
  export type IsAny<T> = 0 extends 1 & T ? true : false;
15
16
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"crawler_commons.d.ts","sourceRoot":"","sources":["../../src/crawlers/crawler_commons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crawler_commons.d.ts","sourceRoot":"","sources":["../../src/crawlers/crawler_commons.ts"],"names":[],"mappings":"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"}
@@ -1,129 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RequestHandlerResult = void 0;
4
- const storages_1 = require("../storages");
1
+ import { KeyValueStore } from '../storages/key_value_store.js';
5
2
  /**
6
3
  * A partial implementation of {@link RestrictedCrawlingContext} that stores parameters of calls to context methods for later inspection.
7
4
  *
8
5
  * @experimental
9
6
  */
10
- class RequestHandlerResult {
7
+ export class RequestHandlerResult {
8
+ config;
9
+ crawleeStateKey;
10
+ _keyValueStoreChanges = {};
11
+ pushDataCalls = [];
12
+ addRequestsCalls = [];
13
+ enqueueLinksCalls = [];
11
14
  constructor(config, crawleeStateKey) {
12
- Object.defineProperty(this, "config", {
13
- enumerable: true,
14
- configurable: true,
15
- writable: true,
16
- value: config
17
- });
18
- Object.defineProperty(this, "crawleeStateKey", {
19
- enumerable: true,
20
- configurable: true,
21
- writable: true,
22
- value: crawleeStateKey
23
- });
24
- Object.defineProperty(this, "_keyValueStoreChanges", {
25
- enumerable: true,
26
- configurable: true,
27
- writable: true,
28
- value: {}
29
- });
30
- Object.defineProperty(this, "pushDataCalls", {
31
- enumerable: true,
32
- configurable: true,
33
- writable: true,
34
- value: []
35
- });
36
- Object.defineProperty(this, "addRequestsCalls", {
37
- enumerable: true,
38
- configurable: true,
39
- writable: true,
40
- value: []
41
- });
42
- Object.defineProperty(this, "enqueueLinksCalls", {
43
- enumerable: true,
44
- configurable: true,
45
- writable: true,
46
- value: []
47
- });
48
- Object.defineProperty(this, "pushData", {
49
- enumerable: true,
50
- configurable: true,
51
- writable: true,
52
- value: async (data, datasetIdOrName) => {
53
- this.pushDataCalls.push([data, datasetIdOrName]);
54
- }
55
- });
56
- Object.defineProperty(this, "enqueueLinks", {
57
- enumerable: true,
58
- configurable: true,
59
- writable: true,
60
- value: async (options) => {
61
- this.enqueueLinksCalls.push([options]);
62
- }
63
- });
64
- Object.defineProperty(this, "addRequests", {
65
- enumerable: true,
66
- configurable: true,
67
- writable: true,
68
- value: async (requests, options = {}) => {
69
- this.addRequestsCalls.push([requests, options]);
70
- }
71
- });
72
- Object.defineProperty(this, "useState", {
73
- enumerable: true,
74
- configurable: true,
75
- writable: true,
76
- value: async (defaultValue) => {
77
- const store = await this.getKeyValueStore(undefined);
78
- return await store.getAutoSavedValue(this.crawleeStateKey, defaultValue);
79
- }
80
- });
81
- Object.defineProperty(this, "getKeyValueStore", {
82
- enumerable: true,
83
- configurable: true,
84
- writable: true,
85
- value: async (idOrName) => {
86
- const store = await storages_1.KeyValueStore.open(idOrName, { config: this.config });
87
- return {
88
- id: this.idOrDefault(idOrName),
89
- name: idOrName,
90
- getValue: async (key) => this.getKeyValueStoreChangedValue(idOrName, key) ?? (await store.getValue(key)),
91
- setValue: async (key, value, options) => {
92
- this.setKeyValueStoreChangedValue(idOrName, key, value, options);
93
- },
94
- getAutoSavedValue: store.getAutoSavedValue.bind(store),
95
- getPublicUrl: store.getPublicUrl.bind(store),
96
- };
97
- }
98
- });
99
- Object.defineProperty(this, "idOrDefault", {
100
- enumerable: true,
101
- configurable: true,
102
- writable: true,
103
- value: (idOrName) => idOrName ?? this.config.get('defaultKeyValueStoreId')
104
- });
105
- Object.defineProperty(this, "getKeyValueStoreChangedValue", {
106
- enumerable: true,
107
- configurable: true,
108
- writable: true,
109
- value: (idOrName, key) => {
110
- var _a;
111
- const id = this.idOrDefault(idOrName);
112
- (_a = this._keyValueStoreChanges)[id] ?? (_a[id] = {});
113
- return this.keyValueStoreChanges[id][key]?.changedValue ?? null;
114
- }
115
- });
116
- Object.defineProperty(this, "setKeyValueStoreChangedValue", {
117
- enumerable: true,
118
- configurable: true,
119
- writable: true,
120
- value: (idOrName, key, changedValue, options) => {
121
- var _a;
122
- const id = this.idOrDefault(idOrName);
123
- (_a = this._keyValueStoreChanges)[id] ?? (_a[id] = {});
124
- this._keyValueStoreChanges[id][key] = { changedValue, options };
125
- }
126
- });
15
+ this.config = config;
16
+ this.crawleeStateKey = crawleeStateKey;
127
17
  }
128
18
  /**
129
19
  * A record of calls to {@link RestrictedCrawlingContext.pushData}, {@link RestrictedCrawlingContext.addRequests}, {@link RestrictedCrawlingContext.enqueueLinks} made by a request handler.
@@ -185,6 +75,42 @@ class RequestHandlerResult {
185
75
  }
186
76
  return result;
187
77
  }
78
+ pushData = async (data, datasetIdOrName) => {
79
+ this.pushDataCalls.push([data, datasetIdOrName]);
80
+ };
81
+ enqueueLinks = async (options) => {
82
+ this.enqueueLinksCalls.push([options]);
83
+ };
84
+ addRequests = async (requests, options = {}) => {
85
+ this.addRequestsCalls.push([requests, options]);
86
+ };
87
+ useState = async (defaultValue) => {
88
+ const store = await this.getKeyValueStore(undefined);
89
+ return await store.getAutoSavedValue(this.crawleeStateKey, defaultValue);
90
+ };
91
+ getKeyValueStore = async (idOrName) => {
92
+ const store = await KeyValueStore.open(idOrName, { config: this.config });
93
+ return {
94
+ id: this.idOrDefault(idOrName),
95
+ name: idOrName,
96
+ getValue: async (key) => this.getKeyValueStoreChangedValue(idOrName, key) ?? (await store.getValue(key)),
97
+ setValue: async (key, value, options) => {
98
+ this.setKeyValueStoreChangedValue(idOrName, key, value, options);
99
+ },
100
+ getAutoSavedValue: store.getAutoSavedValue.bind(store),
101
+ getPublicUrl: store.getPublicUrl.bind(store),
102
+ };
103
+ };
104
+ idOrDefault = (idOrName) => idOrName ?? this.config.get('defaultKeyValueStoreId');
105
+ getKeyValueStoreChangedValue = (idOrName, key) => {
106
+ const id = this.idOrDefault(idOrName);
107
+ this._keyValueStoreChanges[id] ??= {};
108
+ return this.keyValueStoreChanges[id][key]?.changedValue ?? null;
109
+ };
110
+ setKeyValueStoreChangedValue = (idOrName, key, changedValue, options) => {
111
+ const id = this.idOrDefault(idOrName);
112
+ this._keyValueStoreChanges[id] ??= {};
113
+ this._keyValueStoreChanges[id][key] = { changedValue, options };
114
+ };
188
115
  }
189
- exports.RequestHandlerResult = RequestHandlerResult;
190
116
  //# sourceMappingURL=crawler_commons.js.map