@crawlee/core 3.5.5-beta.8 → 3.5.5

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.
@@ -1,67 +1,8 @@
1
- import { LruCache } from '@apify/datastructures';
2
- import type { BatchAddRequestsResult, Dictionary, ProcessedRequest, QueueOperationInfo, RequestQueueClient, RequestQueueInfo, StorageClient } from '@crawlee/types';
3
- import type { StorageManagerOptions } from './storage_manager';
1
+ import type { Dictionary } from '@crawlee/types';
2
+ import type { RequestProviderOptions } from './request_provider';
3
+ import { RequestProvider } from './request_provider';
4
4
  import { Configuration } from '../configuration';
5
- import type { ProxyConfiguration } from '../proxy_configuration';
6
- import type { InternalSource, RequestOptions, Source } from '../request';
7
- import { Request } from '../request';
8
- /**
9
- * When requesting queue head we always fetch requestsInProgressCount * QUERY_HEAD_BUFFER number of requests.
10
- * @internal
11
- */
12
- export declare const QUERY_HEAD_MIN_LENGTH = 100;
13
- /** @internal */
14
- export declare const QUERY_HEAD_BUFFER = 3;
15
- /**
16
- * If queue was modified (request added/updated/deleted) before more than API_PROCESSED_REQUESTS_DELAY_MILLIS
17
- * then we assume the get head operation to be consistent.
18
- * @internal
19
- */
20
- export declare const API_PROCESSED_REQUESTS_DELAY_MILLIS = 10000;
21
- /**
22
- * How many times we try to get queue head with queueModifiedAt older than API_PROCESSED_REQUESTS_DELAY_MILLIS.
23
- * @internal
24
- */
25
- export declare const MAX_QUERIES_FOR_CONSISTENCY = 6;
26
- /**
27
- * Indicates how long it usually takes for the underlying storage to propagate all writes
28
- * to be available to subsequent reads.
29
- * @internal
30
- */
31
- export declare const STORAGE_CONSISTENCY_DELAY_MILLIS = 3000;
32
- /**
33
- * Helper function that creates ID from uniqueKey for local emulation of request queue.
34
- * It's also used for local cache of remote request queue.
35
- *
36
- * This function may not exactly match how requestId is created server side.
37
- * So we never pass requestId created by this to server and use it only for local cache.
38
- *
39
- * @internal
40
- */
41
- export declare function getRequestId(uniqueKey: string): string;
42
- /**
43
- * @internal
44
- */
45
- interface RequestQueueOperationInfo extends QueueOperationInfo {
46
- /** Indicates if request was already present in the queue. */
47
- wasAlreadyPresent: boolean;
48
- /** Indicates if request was already marked as handled. */
49
- wasAlreadyHandled: boolean;
50
- /** The ID of the added request */
51
- requestId: string;
52
- uniqueKey: string;
53
- }
54
- export interface RequestQueueOperationOptions {
55
- /**
56
- * If set to `true`:
57
- * - while adding the request to the queue: the request will be added to the foremost position in the queue.
58
- * - while reclaiming the request: the request will be placed to the beginning of the queue, so that it's returned
59
- * in the next call to {@apilink RequestQueue.fetchNextRequest}.
60
- * By default, it's put to the end of the queue.
61
- * @default false
62
- */
63
- forefront?: boolean;
64
- }
5
+ import type { Request } from '../request';
65
6
  /**
66
7
  * Represents a queue of URLs to crawl, which is used for deep crawling of websites
67
8
  * where you start with several URLs and then recursively
@@ -108,92 +49,13 @@ export interface RequestQueueOperationOptions {
108
49
  * ```
109
50
  * @category Sources
110
51
  */
111
- export declare class RequestQueue {
112
- readonly config: Configuration;
113
- log: import("@apify/log/log").Log;
114
- id: string;
115
- name?: string;
116
- timeoutSecs: number;
117
- clientKey: string;
118
- client: RequestQueueClient;
119
- private proxyConfiguration?;
120
- /**
121
- * Contains a cached list of request IDs from the head of the queue,
122
- * as obtained in the last query. Both key and value is the request ID.
123
- * Need to apply a type here to the generated TS types don't try to use types-apify
124
- */
125
- private queueHeadDict;
126
- queryQueueHeadPromise?: Promise<{
127
- wasLimitReached: boolean;
128
- prevLimit: number;
129
- queueModifiedAt: Date;
130
- queryStartedAt: Date;
131
- hadMultipleClients?: boolean;
132
- }> | null;
133
- inProgress: Set<unknown>;
134
- lastActivity: Date;
135
- internalTimeoutMillis: number;
136
- recentlyHandled: LruCache<any>;
137
- assumedTotalCount: number;
138
- assumedHandledCount: number;
139
- requestsCache: LruCache<{
140
- uniqueKey: string;
141
- wasAlreadyHandled: boolean;
142
- isHandled: boolean;
143
- id: string;
144
- }>;
52
+ export declare class RequestQueue extends RequestProvider {
53
+ private queryQueueHeadPromise?;
54
+ private lastActivity;
145
55
  /**
146
56
  * @internal
147
57
  */
148
- constructor(options: RequestQueueOptions, config?: Configuration);
149
- /**
150
- * @ignore
151
- */
152
- inProgressCount(): number;
153
- /**
154
- * Adds a request to the queue.
155
- *
156
- * If a request with the same `uniqueKey` property is already present in the queue,
157
- * it will not be updated. You can find out whether this happened from the resulting
158
- * {@apilink QueueOperationInfo} object.
159
- *
160
- * To add multiple requests to the queue by extracting links from a webpage,
161
- * see the {@apilink enqueueLinks} helper function.
162
- *
163
- * @param requestLike {@apilink Request} object or vanilla object with request data.
164
- * Note that the function sets the `uniqueKey` and `id` fields to the passed Request.
165
- * @param [options] Request queue operation options.
166
- */
167
- addRequest(requestLike: Source, options?: RequestQueueOperationOptions): Promise<RequestQueueOperationInfo>;
168
- /**
169
- * Adds requests to the queue in batches of 25.
170
- *
171
- * If a request that is passed in is already present due to its `uniqueKey` property being the same,
172
- * it will not be updated. You can find out whether this happened by finding the request in the resulting
173
- * {@apilink BatchAddRequestsResult} object.
174
- *
175
- * @param requestsLike {@apilink Request} objects or vanilla objects with request data.
176
- * Note that the function sets the `uniqueKey` and `id` fields to the passed requests if missing.
177
- * @param [options] Request queue operation options.
178
- */
179
- addRequests(requestsLike: Source[], options?: RequestQueueOperationOptions): Promise<BatchAddRequestsResult>;
180
- /**
181
- * Adds requests to the queue in batches. By default, it will resolve after the initial batch is added, and continue
182
- * adding the rest in background. You can configure the batch size via `batchSize` option and the sleep time in between
183
- * the batches via `waitBetweenBatchesMillis`. If you want to wait for all batches to be added to the queue, you can use
184
- * the `waitForAllRequestsToBeAdded` promise you get in the response object.
185
- *
186
- * @param requests The requests to add
187
- * @param options Options for the request queue
188
- */
189
- addRequestsBatched(requests: (string | Source)[], options?: AddRequestsBatchedOptions): Promise<AddRequestsBatchedResult>;
190
- /**
191
- * Gets the request from the queue specified by ID.
192
- *
193
- * @param id ID of the request.
194
- * @returns Returns the request object, or `null` if it was not found.
195
- */
196
- getRequest<T extends Dictionary = Dictionary>(id: string): Promise<Request<T> | null>;
58
+ constructor(options: RequestProviderOptions, config?: Configuration);
197
59
  /**
198
60
  * Returns a next request in the queue to be processed, or `null` if there are no more pending requests.
199
61
  *
@@ -212,39 +74,7 @@ export declare class RequestQueue {
212
74
  * Returns the request object or `null` if there are no more pending requests.
213
75
  */
214
76
  fetchNextRequest<T extends Dictionary = Dictionary>(): Promise<Request<T> | null>;
215
- /**
216
- * Marks a request that was previously returned by the
217
- * {@apilink RequestQueue.fetchNextRequest}
218
- * function as handled after successful processing.
219
- * Handled requests will never again be returned by the `fetchNextRequest` function.
220
- */
221
- markRequestHandled(request: Request): Promise<RequestQueueOperationInfo | null>;
222
- /**
223
- * Reclaims a failed request back to the queue, so that it can be returned for processing later again
224
- * by another call to {@apilink RequestQueue.fetchNextRequest}.
225
- * The request record in the queue is updated using the provided `request` parameter.
226
- * For example, this lets you store the number of retries or error messages for the request.
227
- */
228
- reclaimRequest(request: Request, options?: RequestQueueOperationOptions): Promise<RequestQueueOperationInfo | null>;
229
- /**
230
- * Resolves to `true` if the next call to {@apilink RequestQueue.fetchNextRequest}
231
- * would return `null`, otherwise it resolves to `false`.
232
- * Note that even if the queue is empty, there might be some pending requests currently being processed.
233
- * If you need to ensure that there is no activity in the queue, use {@apilink RequestQueue.isFinished}.
234
- */
235
- isEmpty(): Promise<boolean>;
236
- /**
237
- * Resolves to `true` if all requests were already handled and there are no more left.
238
- * Due to the nature of distributed storage used by the queue,
239
- * the function might occasionally return a false negative,
240
- * but it will never return a false positive.
241
- */
242
- isFinished(): Promise<boolean>;
243
- private _reset;
244
- /**
245
- * Caches information about request to beware of unneeded addRequest() calls.
246
- */
247
- protected _cacheRequest(cacheKey: string, queueOperationInfo: RequestQueueOperationInfo): void;
77
+ protected ensureHeadIsNonEmpty(): Promise<void>;
248
78
  /**
249
79
  * We always request more items than is in progress to ensure that something falls into head.
250
80
  *
@@ -257,125 +87,13 @@ export declare class RequestQueue {
257
87
  * @returns Indicates if queue head is consistent (true) or inconsistent (false).
258
88
  */
259
89
  protected _ensureHeadIsNonEmpty(ensureConsistency?: boolean, limit?: number, iteration?: number): Promise<boolean>;
260
- /**
261
- * Adds a request straight to the queueHeadDict, to improve performance.
262
- */
263
- private _maybeAddRequestToQueueHead;
264
- /**
265
- * Removes the queue either from the Apify Cloud storage or from the local database,
266
- * depending on the mode of operation.
267
- */
268
- drop(): Promise<void>;
269
- /**
270
- * Returns the number of handled requests.
271
- *
272
- * This function is just a convenient shortcut for:
273
- *
274
- * ```javascript
275
- * const { handledRequestCount } = await queue.getInfo();
276
- * ```
277
- */
278
- handledCount(): Promise<number>;
279
- /**
280
- * Returns an object containing general information about the request queue.
281
- *
282
- * The function returns the same object as the Apify API Client's
283
- * [getQueue](https://docs.apify.com/api/apify-client-js/latest#ApifyClient-requestQueues)
284
- * function, which in turn calls the
285
- * [Get request queue](https://apify.com/docs/api/v2#/reference/request-queues/queue/get-request-queue)
286
- * API endpoint.
287
- *
288
- * **Example:**
289
- * ```
290
- * {
291
- * id: "WkzbQMuFYuamGv3YF",
292
- * name: "my-queue",
293
- * userId: "wRsJZtadYvn4mBZmm",
294
- * createdAt: new Date("2015-12-12T07:34:14.202Z"),
295
- * modifiedAt: new Date("2015-12-13T08:36:13.202Z"),
296
- * accessedAt: new Date("2015-12-14T08:36:13.202Z"),
297
- * totalRequestCount: 25,
298
- * handledRequestCount: 5,
299
- * pendingRequestCount: 20,
300
- * }
301
- * ```
302
- */
303
- getInfo(): Promise<RequestQueueInfo | undefined>;
304
- /**
305
- * Fetches URLs from requestsFromUrl and returns them in format of list of requests
306
- */
307
- protected _fetchRequestsFromUrl(source: InternalSource): Promise<RequestOptions[]>;
308
- /**
309
- * Adds all fetched requests from a URL from a remote resource.
310
- */
311
- protected _addFetchedRequests(source: InternalSource, fetchedRequests: RequestOptions[], options: RequestQueueOperationOptions): Promise<ProcessedRequest[]>;
312
- /**
313
- * @internal wraps public utility for mocking purposes
314
- */
315
- private _downloadListOfUrls;
316
- /**
317
- * Opens a request queue and returns a promise resolving to an instance
318
- * of the {@apilink RequestQueue} class.
319
- *
320
- * {@apilink RequestQueue} represents a queue of URLs to crawl, which is stored either on local filesystem or in the cloud.
321
- * The queue is used for deep crawling of websites, where you start with several URLs and then
322
- * recursively follow links to other pages. The data structure supports both breadth-first
323
- * and depth-first crawling orders.
324
- *
325
- * For more details and code examples, see the {@apilink RequestQueue} class.
326
- *
327
- * @param [queueIdOrName]
328
- * ID or name of the request queue to be opened. If `null` or `undefined`,
329
- * the function returns the default request queue associated with the crawler run.
330
- * @param [options] Open Request Queue options.
331
- */
332
- static open(queueIdOrName?: string | null, options?: StorageManagerOptions): Promise<RequestQueue>;
333
- }
334
- export interface RequestQueueOptions {
335
- id: string;
336
- name?: string;
337
- client: StorageClient;
338
- /**
339
- * Used to pass the proxy configuration for the `requestsFromUrl` objects.
340
- * Takes advantage of the internal address rotation and authentication process.
341
- * If undefined, the `requestsFromUrl` requests will be made without proxy.
342
- */
343
- proxyConfiguration?: ProxyConfiguration;
344
- }
345
- export interface AddRequestsBatchedOptions extends RequestQueueOperationOptions {
346
- /**
347
- * Whether to wait for all the provided requests to be added, instead of waiting just for the initial batch of up to `batchSize`.
348
- * @default false
349
- */
350
- waitForAllRequestsToBeAdded?: boolean;
351
- /**
352
- * @default 1000
353
- */
354
- batchSize?: number;
355
- /**
356
- * @default 1000
357
- */
358
- waitBetweenBatchesMillis?: number;
359
- }
360
- export interface AddRequestsBatchedResult {
361
- addedRequests: ProcessedRequest[];
362
- /**
363
- * A promise which will resolve with the rest of the requests that were added to the queue.
364
- *
365
- * Alternatively, we can set {@apilink AddRequestsBatchedOptions.waitForAllRequestsToBeAdded|`waitForAllRequestsToBeAdded`} to `true`
366
- * in the {@apilink BasicCrawler.addRequests|`crawler.addRequests()`} options.
367
- *
368
- * **Example:**
369
- *
370
- * ```ts
371
- * // Assuming `requests` is a list of requests.
372
- * const result = await crawler.addRequests(requests);
373
- *
374
- * // If we want to wait for the rest of the requests to be added to the queue:
375
- * await result.waitForAllRequestsToBeAdded;
376
- * ```
377
- */
378
- waitForAllRequestsToBeAdded: Promise<ProcessedRequest[]>;
90
+ isFinished(): Promise<boolean>;
91
+ addRequest(...args: Parameters<RequestProvider['addRequest']>): Promise<import("./request_provider").RequestQueueOperationInfo>;
92
+ addRequests(...args: Parameters<RequestProvider['addRequests']>): Promise<import("@crawlee/types").BatchAddRequestsResult>;
93
+ addRequestsBatched(...args: Parameters<RequestProvider['addRequestsBatched']>): Promise<import("./request_provider").AddRequestsBatchedResult>;
94
+ markRequestHandled(...args: Parameters<RequestProvider['markRequestHandled']>): Promise<import("./request_provider").RequestQueueOperationInfo | null>;
95
+ reclaimRequest(...args: Parameters<RequestProvider['reclaimRequest']>): Promise<import("./request_provider").RequestQueueOperationInfo | null>;
96
+ protected _reset(): void;
97
+ static open(...args: Parameters<typeof RequestProvider.open>): Promise<RequestQueue>;
379
98
  }
380
- export {};
381
99
  //# sourceMappingURL=request_queue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request_queue.d.ts","sourceRoot":"","sources":["../../src/storages/request_queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request_queue.d.ts","sourceRoot":"","sources":["../../src/storages/request_queue.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AASrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAW1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAC7C,OAAO,CAAC,qBAAqB,CAAC,CAMb;IAEjB,OAAO,CAAC,YAAY,CAAc;IAElC;;OAEG;gBACS,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAkC;IASrF;;;;;;;;;;;;;;;;OAgBG;IACY,gBAAgB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;cA0DvE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9D;;;;;;;;;;OAUG;cACa,qBAAqB,CACjC,iBAAiB,UAAQ,EACzB,KAAK,SAA8E,EACnF,SAAS,SAAI,GACd,OAAO,CAAC,OAAO,CAAC;IA2FJ,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAa9B,UAAU,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAK7D,WAAW,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;IAK/D,kBAAkB,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAK7E,kBAAkB,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAK7E,cAAc,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;cAKjE,MAAM;WAKT,IAAI,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;CAGhG"}