@crawlee/utils 4.0.0-beta.4 → 4.0.0-beta.41
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 +9 -5
- package/index.d.ts +5 -3
- package/index.d.ts.map +1 -1
- package/index.js +5 -3
- package/index.js.map +1 -1
- package/internals/cheerio.d.ts +2 -0
- package/internals/cheerio.d.ts.map +1 -1
- package/internals/cheerio.js.map +1 -1
- package/internals/debug.d.ts +1 -0
- package/internals/debug.d.ts.map +1 -1
- package/internals/debug.js +12 -0
- package/internals/debug.js.map +1 -1
- package/internals/extract-urls.d.ts +5 -0
- package/internals/extract-urls.d.ts.map +1 -1
- package/internals/extract-urls.js +7 -3
- package/internals/extract-urls.js.map +1 -1
- package/internals/iterables.d.ts +127 -0
- package/internals/iterables.d.ts.map +1 -0
- package/internals/iterables.js +222 -0
- package/internals/iterables.js.map +1 -0
- package/internals/robots.d.ts +20 -3
- package/internals/robots.d.ts.map +1 -1
- package/internals/robots.js +31 -32
- package/internals/robots.js.map +1 -1
- package/internals/sitemap.d.ts +57 -6
- package/internals/sitemap.d.ts.map +1 -1
- package/internals/sitemap.js +160 -30
- package/internals/sitemap.js.map +1 -1
- package/internals/{systemInfoV2 → system-info}/cpu-info.d.ts +5 -1
- package/internals/system-info/cpu-info.d.ts.map +1 -0
- package/internals/{systemInfoV2 → system-info}/cpu-info.js +17 -12
- package/internals/system-info/cpu-info.js.map +1 -0
- package/internals/{systemInfoV2 → system-info}/memory-info.d.ts +5 -1
- package/internals/system-info/memory-info.d.ts.map +1 -0
- package/internals/{systemInfoV2 → system-info}/memory-info.js +3 -5
- package/internals/system-info/memory-info.js.map +1 -0
- package/internals/system-info/ps-tree.d.ts.map +1 -0
- package/internals/system-info/ps-tree.js.map +1 -0
- package/internals/url.d.ts +1 -1
- package/internals/url.d.ts.map +1 -1
- package/package.json +6 -6
- package/internals/memory-info.d.ts +0 -26
- package/internals/memory-info.d.ts.map +0 -1
- package/internals/memory-info.js +0 -131
- package/internals/memory-info.js.map +0 -1
- package/internals/systemInfoV2/cpu-info.d.ts.map +0 -1
- package/internals/systemInfoV2/cpu-info.js.map +0 -1
- package/internals/systemInfoV2/memory-info.d.ts.map +0 -1
- package/internals/systemInfoV2/memory-info.js.map +0 -1
- package/internals/systemInfoV2/ps-tree.d.ts.map +0 -1
- package/internals/systemInfoV2/ps-tree.js.map +0 -1
- package/tsconfig.build.tsbuildinfo +0 -1
- /package/internals/{systemInfoV2 → system-info}/ps-tree.d.ts +0 -0
- /package/internals/{systemInfoV2 → system-info}/ps-tree.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"robots.d.ts","sourceRoot":"","sources":["../../src/internals/robots.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"robots.d.ts","sourceRoot":"","sources":["../../src/internals/robots.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAIpE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAa;IAElB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,MAAM,CAAC;IAHnB,OAAO;IAMP;;;;;;;OAOG;WACU,IAAI,CACb,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,cAAc,CAAC;QAC5B,MAAM,CAAC,EAAE,aAAa,CAAC;KAC1B,GACF,OAAO,CAAC,aAAa,CAAC;IAQzB;;;;;OAKG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa;qBAKpD,IAAI,CACvB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,cAAc,CAAC;QAC5B,MAAM,CAAC,EAAE,aAAa,CAAC;KAC1B,GACF,OAAO,CAAC,aAAa,CAAC;IAgCzB;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,OAAO;IAIhD;;OAEG;IACH,WAAW,IAAI,MAAM,EAAE;IAIvB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAIvC;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAGnD;AAGD,OAAO,EAAE,aAAa,IAAI,UAAU,EAAE,CAAC"}
|
package/internals/robots.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FetchHttpClient } from '@crawlee/http-client';
|
|
2
2
|
import robotsParser from 'robots-parser';
|
|
3
3
|
import { Sitemap } from './sitemap.js';
|
|
4
|
-
let HTTPError;
|
|
5
4
|
/**
|
|
6
5
|
* Loads and queries information from a [robots.txt file](https://en.wikipedia.org/wiki/Robots.txt).
|
|
7
6
|
*
|
|
@@ -23,20 +22,25 @@ let HTTPError;
|
|
|
23
22
|
export class RobotsTxtFile {
|
|
24
23
|
robots;
|
|
25
24
|
proxyUrl;
|
|
26
|
-
|
|
25
|
+
logger;
|
|
26
|
+
constructor(robots, proxyUrl, logger) {
|
|
27
27
|
this.robots = robots;
|
|
28
28
|
this.proxyUrl = proxyUrl;
|
|
29
|
+
this.logger = logger;
|
|
29
30
|
}
|
|
30
31
|
/**
|
|
31
32
|
* Determine the location of a robots.txt file for a URL and fetch it.
|
|
32
33
|
* @param url the URL to fetch robots.txt for
|
|
33
|
-
* @param [
|
|
34
|
+
* @param [options] additional options
|
|
35
|
+
* @param [options.signal] an AbortSignal to cancel the request
|
|
36
|
+
* @param [options.timeoutMillis] timeout in milliseconds for the request
|
|
37
|
+
* @param [options.proxyUrl] a proxy to be used for fetching the robots.txt file
|
|
34
38
|
*/
|
|
35
|
-
static async find(url,
|
|
39
|
+
static async find(url, options) {
|
|
36
40
|
const robotsTxtFileUrl = new URL(url);
|
|
37
41
|
robotsTxtFileUrl.pathname = '/robots.txt';
|
|
38
42
|
robotsTxtFileUrl.search = '';
|
|
39
|
-
return RobotsTxtFile.load(robotsTxtFileUrl.toString(),
|
|
43
|
+
return RobotsTxtFile.load(robotsTxtFileUrl.toString(), options);
|
|
40
44
|
}
|
|
41
45
|
/**
|
|
42
46
|
* Allows providing the URL and robots.txt content explicitly instead of loading it from the target site.
|
|
@@ -48,33 +52,28 @@ export class RobotsTxtFile {
|
|
|
48
52
|
// @ts-ignore
|
|
49
53
|
return new RobotsTxtFile(robotsParser(url, content), proxyUrl);
|
|
50
54
|
}
|
|
51
|
-
static async load(url,
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
responseType: 'text',
|
|
61
|
-
});
|
|
62
|
-
// @ts-ignore
|
|
63
|
-
return new RobotsTxtFile(robotsParser(url.toString(), response.body), proxyUrl);
|
|
55
|
+
static async load(url, options) {
|
|
56
|
+
const { proxyUrl, logger, httpClient = new FetchHttpClient() } = options || {};
|
|
57
|
+
const response = await httpClient.sendRequest(new Request(url, { method: 'GET' }), {
|
|
58
|
+
proxyUrl,
|
|
59
|
+
timeoutMillis: options?.timeoutMillis,
|
|
60
|
+
signal: options?.signal,
|
|
61
|
+
});
|
|
62
|
+
if (response.status < 200 || response.status >= 300) {
|
|
63
|
+
throw new Error(`Failed to load robots.txt from ${url}: HTTP ${response.status}`);
|
|
64
64
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}, proxyUrl);
|
|
75
|
-
}
|
|
76
|
-
throw e;
|
|
65
|
+
if (response.status === 404) {
|
|
66
|
+
return new RobotsTxtFile({
|
|
67
|
+
isAllowed() {
|
|
68
|
+
return true;
|
|
69
|
+
},
|
|
70
|
+
getSitemaps() {
|
|
71
|
+
return [];
|
|
72
|
+
},
|
|
73
|
+
}, proxyUrl, logger);
|
|
77
74
|
}
|
|
75
|
+
// @ts-ignore
|
|
76
|
+
return new RobotsTxtFile(robotsParser(url.toString(), await response.text()), proxyUrl, logger);
|
|
78
77
|
}
|
|
79
78
|
/**
|
|
80
79
|
* Check if a URL should be crawled by robots.
|
|
@@ -94,7 +93,7 @@ export class RobotsTxtFile {
|
|
|
94
93
|
* Parse all the sitemaps referenced in the robots file.
|
|
95
94
|
*/
|
|
96
95
|
async parseSitemaps() {
|
|
97
|
-
return Sitemap.load(this.robots.getSitemaps(), this.proxyUrl);
|
|
96
|
+
return Sitemap.load(this.robots.getSitemaps(), this.proxyUrl, { logger: this.logger });
|
|
98
97
|
}
|
|
99
98
|
/**
|
|
100
99
|
* Get all URLs from all the sitemaps referenced in the robots file. A shorthand for `(await robots.parseSitemaps()).urls`.
|
package/internals/robots.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"robots.js","sourceRoot":"","sources":["../../src/internals/robots.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"robots.js","sourceRoot":"","sources":["../../src/internals/robots.ts"],"names":[],"mappings":"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"}
|
package/internals/sitemap.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import type { Delays } from 'got-scraping';
|
|
1
|
+
import type { BaseHttpClient, CrawleeLogger } from '@crawlee/types';
|
|
3
2
|
interface SitemapUrlData {
|
|
4
3
|
loc: string;
|
|
5
4
|
lastmod?: Date;
|
|
@@ -36,9 +35,22 @@ export interface ParseSitemapOptions {
|
|
|
36
35
|
*/
|
|
37
36
|
sitemapRetries?: number;
|
|
38
37
|
/**
|
|
39
|
-
*
|
|
38
|
+
* Timeout settings for network requests when fetching sitemaps. By default this is `30000` milliseconds (30 seconds).
|
|
40
39
|
*/
|
|
41
|
-
|
|
40
|
+
timeoutMillis?: number;
|
|
41
|
+
/**
|
|
42
|
+
* If true, the parser will log a warning if it fails to fetch a sitemap due to a network error
|
|
43
|
+
* @default true
|
|
44
|
+
*/
|
|
45
|
+
reportNetworkErrors?: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Custom HTTP client to be used for fetching sitemaps.
|
|
48
|
+
*/
|
|
49
|
+
httpClient?: BaseHttpClient;
|
|
50
|
+
/**
|
|
51
|
+
* Optional logger for reporting warnings during sitemap parsing.
|
|
52
|
+
*/
|
|
53
|
+
logger?: CrawleeLogger;
|
|
42
54
|
}
|
|
43
55
|
export declare function parseSitemap<T extends ParseSitemapOptions>(initialSources: SitemapSource[], proxyUrl?: string, options?: T): AsyncIterable<T['emitNestedSitemaps'] extends true ? SitemapUrl | NestedSitemap : SitemapUrl>;
|
|
44
56
|
/**
|
|
@@ -62,7 +74,7 @@ export declare class Sitemap {
|
|
|
62
74
|
* @param url The domain URL to fetch the sitemap for.
|
|
63
75
|
* @param proxyUrl A proxy to be used for fetching the sitemap file.
|
|
64
76
|
*/
|
|
65
|
-
static tryCommonNames(url: string, proxyUrl?: string): Promise<Sitemap>;
|
|
77
|
+
static tryCommonNames(url: string, proxyUrl?: string, parseSitemapOptions?: ParseSitemapOptions): Promise<Sitemap>;
|
|
66
78
|
/**
|
|
67
79
|
* Fetch sitemap content from given URL or URLs and return URLs of referenced pages.
|
|
68
80
|
* @param urls sitemap URL(s)
|
|
@@ -74,8 +86,47 @@ export declare class Sitemap {
|
|
|
74
86
|
* @param content XML sitemap content
|
|
75
87
|
* @param proxyUrl URL of a proxy to be used for fetching sitemap contents
|
|
76
88
|
*/
|
|
77
|
-
static fromXmlString(content: string, proxyUrl?: string): Promise<Sitemap>;
|
|
89
|
+
static fromXmlString(content: string, proxyUrl?: string, parseSitemapOptions?: ParseSitemapOptions): Promise<Sitemap>;
|
|
78
90
|
protected static parse(sources: SitemapSource[], proxyUrl?: string, parseSitemapOptions?: ParseSitemapOptions): Promise<Sitemap>;
|
|
79
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Given a list of URLs, discover related sitemap files for these domains by checking the `robots.txt` file,
|
|
94
|
+
* the default `sitemap.xml` & `sitemap.txt` files and the URLs themselves.
|
|
95
|
+
* @param `urls` The list of URLs to discover sitemaps for.
|
|
96
|
+
* @param `options` Options for sitemap discovery
|
|
97
|
+
* @returns An async iterable with the discovered sitemap URLs.
|
|
98
|
+
*/
|
|
99
|
+
export declare function discoverValidSitemaps(urls: string[], options?: {
|
|
100
|
+
/**
|
|
101
|
+
* Proxy URL to be used for network requests.
|
|
102
|
+
*/
|
|
103
|
+
proxyUrl?: string;
|
|
104
|
+
/**
|
|
105
|
+
* Timeout in milliseconds for the entire `discoverValidSitemaps` call.
|
|
106
|
+
* An `AbortController` is created internally and its signal is passed to every HTTP request,
|
|
107
|
+
* so the whole discovery operation is cancelled once the timeout elapses.
|
|
108
|
+
* Defaults to `60_000` ms (60 seconds) to prevent indefinite hangs.
|
|
109
|
+
*/
|
|
110
|
+
timeoutMillis?: number;
|
|
111
|
+
/**
|
|
112
|
+
* An external `AbortSignal` to cancel the entire discovery operation.
|
|
113
|
+
* If both `signal` and `timeout` are provided, the operation is cancelled
|
|
114
|
+
* when either the signal is aborted or the timeout elapses (whichever comes first).
|
|
115
|
+
*/
|
|
116
|
+
signal?: AbortSignal;
|
|
117
|
+
/**
|
|
118
|
+
* Timeout in milliseconds for each individual HTTP request during discovery.
|
|
119
|
+
* Defaults to `20000` ms (20 seconds).
|
|
120
|
+
*/
|
|
121
|
+
requestTimeoutMillis?: number;
|
|
122
|
+
/**
|
|
123
|
+
* HTTP client to be used for network requests.
|
|
124
|
+
*/
|
|
125
|
+
httpClient?: BaseHttpClient;
|
|
126
|
+
/**
|
|
127
|
+
* Optional logger for reporting warnings during sitemap discovery.
|
|
128
|
+
*/
|
|
129
|
+
logger?: CrawleeLogger;
|
|
130
|
+
}): AsyncIterable<string>;
|
|
80
131
|
export {};
|
|
81
132
|
//# sourceMappingURL=sitemap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/internals/sitemap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/internals/sitemap.ts"],"names":[],"mappings":"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"}
|
package/internals/sitemap.js
CHANGED
|
@@ -2,9 +2,12 @@ import { createHash } from 'node:crypto';
|
|
|
2
2
|
import { PassThrough, pipeline, Readable, Transform } from 'node:stream';
|
|
3
3
|
import { StringDecoder } from 'node:string_decoder';
|
|
4
4
|
import { createGunzip } from 'node:zlib';
|
|
5
|
+
import { FetchHttpClient } from '@crawlee/http-client';
|
|
6
|
+
import { fileTypeStream } from 'file-type';
|
|
5
7
|
import sax from 'sax';
|
|
6
8
|
import MIMEType from 'whatwg-mimetype';
|
|
7
|
-
import
|
|
9
|
+
import { mergeAsyncIterables } from './iterables.js';
|
|
10
|
+
import { RobotsFile } from './robots.js';
|
|
8
11
|
class SitemapTxtParser extends Transform {
|
|
9
12
|
decoder = new StringDecoder('utf8');
|
|
10
13
|
buffer = '';
|
|
@@ -121,9 +124,7 @@ class SitemapXmlParser extends Transform {
|
|
|
121
124
|
}
|
|
122
125
|
}
|
|
123
126
|
export async function* parseSitemap(initialSources, proxyUrl, options) {
|
|
124
|
-
const {
|
|
125
|
-
const { fileTypeStream } = await import('file-type');
|
|
126
|
-
const { emitNestedSitemaps = false, maxDepth = Infinity, sitemapRetries = 3, networkTimeouts } = options ?? {};
|
|
127
|
+
const { httpClient = new FetchHttpClient(), emitNestedSitemaps = false, maxDepth = Infinity, sitemapRetries = 3, timeoutMillis: timeout = 30000, reportNetworkErrors = true, logger, } = options ?? {};
|
|
127
128
|
const sources = [...initialSources];
|
|
128
129
|
const visitedSitemapUrls = new Set();
|
|
129
130
|
const createParser = (contentType = '', url) => {
|
|
@@ -145,7 +146,6 @@ export async function* parseSitemap(initialSources, proxyUrl, options) {
|
|
|
145
146
|
while (sources.length > 0) {
|
|
146
147
|
const source = sources.shift();
|
|
147
148
|
if ((source?.depth ?? 0) > maxDepth) {
|
|
148
|
-
log.debug(`Skipping sitemap ${source.type === 'url' ? source.url : ''} because it reached max depth ${maxDepth}.`);
|
|
149
149
|
continue;
|
|
150
150
|
}
|
|
151
151
|
let items = null;
|
|
@@ -155,23 +155,28 @@ export async function* parseSitemap(initialSources, proxyUrl, options) {
|
|
|
155
155
|
let retriesLeft = sitemapRetries + 1;
|
|
156
156
|
while (retriesLeft-- > 0) {
|
|
157
157
|
try {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
proxyUrl,
|
|
158
|
+
let sitemapResponse;
|
|
159
|
+
try {
|
|
160
|
+
sitemapResponse = await httpClient.sendRequest(new Request(sitemapUrl, {
|
|
162
161
|
method: 'GET',
|
|
163
|
-
timeout: networkTimeouts,
|
|
164
162
|
headers: {
|
|
165
|
-
accept: '
|
|
163
|
+
accept: '*/*',
|
|
166
164
|
},
|
|
165
|
+
}), {
|
|
166
|
+
proxyUrl,
|
|
167
|
+
timeoutMillis: timeout,
|
|
167
168
|
});
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
169
|
+
}
|
|
170
|
+
catch (error) {
|
|
171
|
+
sitemapResponse = null;
|
|
172
|
+
}
|
|
171
173
|
let error = null;
|
|
172
|
-
if (
|
|
173
|
-
let contentType =
|
|
174
|
-
|
|
174
|
+
if (sitemapResponse && sitemapResponse.status >= 200 && sitemapResponse.status < 300) {
|
|
175
|
+
let contentType = sitemapResponse.headers.get('content-type');
|
|
176
|
+
if (sitemapResponse.body === null) {
|
|
177
|
+
break;
|
|
178
|
+
}
|
|
179
|
+
const streamWithType = await fileTypeStream(Readable.fromWeb(sitemapResponse.body));
|
|
175
180
|
if (streamWithType.fileType !== undefined) {
|
|
176
181
|
contentType = streamWithType.fileType.mime;
|
|
177
182
|
}
|
|
@@ -184,29 +189,37 @@ export async function* parseSitemap(initialSources, proxyUrl, options) {
|
|
|
184
189
|
sitemapUrl.pathname = sitemapUrl.pathname.substring(0, sitemapUrl.pathname.length - 3);
|
|
185
190
|
}
|
|
186
191
|
}
|
|
187
|
-
items = pipeline(streamWithType, isGzipped ? createGunzip() : new PassThrough(), createParser(contentType, sitemapUrl), (e) => {
|
|
188
|
-
if (e !== undefined) {
|
|
189
|
-
error = e;
|
|
192
|
+
items = pipeline(streamWithType, isGzipped ? createGunzip() : new PassThrough(), createParser(contentType ?? undefined, sitemapUrl), (e) => {
|
|
193
|
+
if (e !== undefined && e !== null) {
|
|
194
|
+
error = { type: 'parser', error: e };
|
|
190
195
|
}
|
|
191
196
|
});
|
|
192
197
|
}
|
|
193
198
|
else {
|
|
194
|
-
error =
|
|
199
|
+
error = {
|
|
200
|
+
type: 'fetch',
|
|
201
|
+
error: new Error(`Failed to fetch sitemap: ${sitemapUrl}, status code: ${sitemapResponse?.status}`),
|
|
202
|
+
};
|
|
195
203
|
}
|
|
196
204
|
if (error !== null) {
|
|
197
|
-
|
|
205
|
+
const shouldIgnoreError = error.type === 'fetch' && !reportNetworkErrors;
|
|
206
|
+
if (!shouldIgnoreError) {
|
|
207
|
+
throw error.error;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
break;
|
|
198
212
|
}
|
|
199
|
-
break;
|
|
200
213
|
}
|
|
201
214
|
catch (e) {
|
|
202
|
-
|
|
215
|
+
logger?.warning(`Malformed sitemap content: ${sitemapUrl}, ${retriesLeft === 0 ? 'no retries left.' : 'retrying...'} (${e})`);
|
|
203
216
|
}
|
|
204
217
|
}
|
|
205
218
|
}
|
|
206
219
|
else if (source.type === 'raw') {
|
|
207
220
|
items = pipeline(Readable.from([source.content]), createParser('text/xml'), (error) => {
|
|
208
221
|
if (error !== undefined) {
|
|
209
|
-
|
|
222
|
+
logger?.warning(`Malformed sitemap content: ${error}`);
|
|
210
223
|
}
|
|
211
224
|
});
|
|
212
225
|
}
|
|
@@ -254,7 +267,7 @@ export class Sitemap {
|
|
|
254
267
|
* @param url The domain URL to fetch the sitemap for.
|
|
255
268
|
* @param proxyUrl A proxy to be used for fetching the sitemap file.
|
|
256
269
|
*/
|
|
257
|
-
static async tryCommonNames(url, proxyUrl) {
|
|
270
|
+
static async tryCommonNames(url, proxyUrl, parseSitemapOptions) {
|
|
258
271
|
const sitemapUrls = [];
|
|
259
272
|
const sitemapUrl = new URL(url);
|
|
260
273
|
sitemapUrl.search = '';
|
|
@@ -262,7 +275,7 @@ export class Sitemap {
|
|
|
262
275
|
sitemapUrls.push(sitemapUrl.toString());
|
|
263
276
|
sitemapUrl.pathname = '/sitemap.txt';
|
|
264
277
|
sitemapUrls.push(sitemapUrl.toString());
|
|
265
|
-
return Sitemap.load(sitemapUrls, proxyUrl);
|
|
278
|
+
return Sitemap.load(sitemapUrls, proxyUrl, { reportNetworkErrors: false, ...parseSitemapOptions });
|
|
266
279
|
}
|
|
267
280
|
/**
|
|
268
281
|
* Fetch sitemap content from given URL or URLs and return URLs of referenced pages.
|
|
@@ -277,8 +290,8 @@ export class Sitemap {
|
|
|
277
290
|
* @param content XML sitemap content
|
|
278
291
|
* @param proxyUrl URL of a proxy to be used for fetching sitemap contents
|
|
279
292
|
*/
|
|
280
|
-
static async fromXmlString(content, proxyUrl) {
|
|
281
|
-
return await this.parse([{ type: 'raw', content }], proxyUrl);
|
|
293
|
+
static async fromXmlString(content, proxyUrl, parseSitemapOptions) {
|
|
294
|
+
return await this.parse([{ type: 'raw', content }], proxyUrl, parseSitemapOptions);
|
|
282
295
|
}
|
|
283
296
|
static async parse(sources, proxyUrl, parseSitemapOptions) {
|
|
284
297
|
const urls = [];
|
|
@@ -287,10 +300,127 @@ export class Sitemap {
|
|
|
287
300
|
urls.push(item.loc);
|
|
288
301
|
}
|
|
289
302
|
}
|
|
290
|
-
catch {
|
|
303
|
+
catch (e) {
|
|
304
|
+
parseSitemapOptions?.logger?.warning(`Sitemap.load: Failed to load sitemap, returning empty result. (${e})`);
|
|
291
305
|
return new Sitemap([]);
|
|
292
306
|
}
|
|
293
307
|
return new Sitemap(urls);
|
|
294
308
|
}
|
|
295
309
|
}
|
|
310
|
+
/**
|
|
311
|
+
* Given a list of URLs, discover related sitemap files for these domains by checking the `robots.txt` file,
|
|
312
|
+
* the default `sitemap.xml` & `sitemap.txt` files and the URLs themselves.
|
|
313
|
+
* @param `urls` The list of URLs to discover sitemaps for.
|
|
314
|
+
* @param `options` Options for sitemap discovery
|
|
315
|
+
* @returns An async iterable with the discovered sitemap URLs.
|
|
316
|
+
*/
|
|
317
|
+
export async function* discoverValidSitemaps(urls, options = {}) {
|
|
318
|
+
const { proxyUrl, timeoutMillis = 60_000, signal: externalSignal, requestTimeoutMillis = 20_000, httpClient = new FetchHttpClient(), logger, } = options;
|
|
319
|
+
const controller = new AbortController();
|
|
320
|
+
const timeoutHandle = setTimeout(() => controller.abort(), timeoutMillis);
|
|
321
|
+
const onExternalAbort = () => controller.abort();
|
|
322
|
+
if (externalSignal) {
|
|
323
|
+
if (externalSignal.aborted) {
|
|
324
|
+
controller.abort();
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
externalSignal.addEventListener('abort', onExternalAbort, { once: true });
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
const signal = controller.signal;
|
|
331
|
+
const sitemapUrls = new Set();
|
|
332
|
+
const addSitemapUrl = (url) => {
|
|
333
|
+
const sizeBefore = sitemapUrls.size;
|
|
334
|
+
sitemapUrls.add(url);
|
|
335
|
+
if (sitemapUrls.size > sizeBefore) {
|
|
336
|
+
return url;
|
|
337
|
+
}
|
|
338
|
+
return undefined;
|
|
339
|
+
};
|
|
340
|
+
const urlExists = async (url) => {
|
|
341
|
+
if (!httpClient) {
|
|
342
|
+
return false;
|
|
343
|
+
}
|
|
344
|
+
try {
|
|
345
|
+
const response = await httpClient.sendRequest(new Request(url, { method: 'HEAD' }), {
|
|
346
|
+
proxyUrl,
|
|
347
|
+
timeoutMillis: requestTimeoutMillis,
|
|
348
|
+
signal,
|
|
349
|
+
});
|
|
350
|
+
return response.status >= 200 && response.status < 400;
|
|
351
|
+
}
|
|
352
|
+
catch {
|
|
353
|
+
return false;
|
|
354
|
+
}
|
|
355
|
+
};
|
|
356
|
+
const discoverSitemapsForDomainUrls = async function* (hostname, domainUrls) {
|
|
357
|
+
if (!hostname) {
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
360
|
+
try {
|
|
361
|
+
const robotsFile = await RobotsFile.find(domainUrls[0], {
|
|
362
|
+
proxyUrl,
|
|
363
|
+
timeoutMillis: requestTimeoutMillis,
|
|
364
|
+
signal,
|
|
365
|
+
httpClient,
|
|
366
|
+
logger,
|
|
367
|
+
});
|
|
368
|
+
for (const sitemapUrl of robotsFile.getSitemaps()) {
|
|
369
|
+
if (addSitemapUrl(sitemapUrl)) {
|
|
370
|
+
yield sitemapUrl;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
catch (err) {
|
|
375
|
+
logger?.warning(`Failed to fetch robots.txt file for ${hostname}`, { error: err });
|
|
376
|
+
}
|
|
377
|
+
const sitemapUrl = domainUrls.find((url) => /sitemap\.(?:xml|txt)(?:\.gz)?$/i.test(url));
|
|
378
|
+
if (sitemapUrl !== undefined) {
|
|
379
|
+
if (addSitemapUrl(sitemapUrl)) {
|
|
380
|
+
yield sitemapUrl;
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
else {
|
|
384
|
+
const firstUrl = new URL(domainUrls[0]);
|
|
385
|
+
const possibleSitemapPathnames = ['/sitemap.xml', '/sitemap.txt', '/sitemap_index.xml'];
|
|
386
|
+
for (const pathname of possibleSitemapPathnames) {
|
|
387
|
+
firstUrl.pathname = pathname;
|
|
388
|
+
const candidateSitemapUrl = firstUrl.toString();
|
|
389
|
+
try {
|
|
390
|
+
if (await urlExists(candidateSitemapUrl)) {
|
|
391
|
+
if (addSitemapUrl(candidateSitemapUrl)) {
|
|
392
|
+
yield candidateSitemapUrl;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
catch (error) {
|
|
397
|
+
logger?.debug(`Failed to check sitemap candidate ${candidateSitemapUrl} for ${hostname}`, {
|
|
398
|
+
error,
|
|
399
|
+
});
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
};
|
|
404
|
+
const groupedUrls = urls.reduce((acc, url) => {
|
|
405
|
+
const hostname = new URL(url)?.hostname ?? '';
|
|
406
|
+
acc[hostname] ??= [];
|
|
407
|
+
acc[hostname].push(url);
|
|
408
|
+
return acc;
|
|
409
|
+
}, {});
|
|
410
|
+
const iterables = Object.entries(groupedUrls).map(([hostname, domainUrls]) => discoverSitemapsForDomainUrls(hostname, domainUrls));
|
|
411
|
+
const discoveredUrls = new Set();
|
|
412
|
+
try {
|
|
413
|
+
for await (const url of mergeAsyncIterables(...iterables)) {
|
|
414
|
+
if (discoveredUrls.has(url)) {
|
|
415
|
+
continue;
|
|
416
|
+
}
|
|
417
|
+
discoveredUrls.add(url);
|
|
418
|
+
yield url;
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
finally {
|
|
422
|
+
clearTimeout(timeoutHandle);
|
|
423
|
+
externalSignal?.removeEventListener('abort', onExternalAbort);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
296
426
|
//# sourceMappingURL=sitemap.js.map
|
package/internals/sitemap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/internals/sitemap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/internals/sitemap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CrawleeLogger } from '@crawlee/types';
|
|
1
2
|
/**
|
|
2
3
|
* Gets the "bare metal" cpu load.
|
|
3
4
|
* Used in
|
|
@@ -60,5 +61,8 @@ export declare function sampleCpuUsage(cGroupsVersion: string): Promise<CpuSampl
|
|
|
60
61
|
* @returns a number between 0 and 1 for the cpu load
|
|
61
62
|
* @internal
|
|
62
63
|
*/
|
|
63
|
-
export declare function getCurrentCpuTicksV2(
|
|
64
|
+
export declare function getCurrentCpuTicksV2(options?: {
|
|
65
|
+
containerized?: boolean;
|
|
66
|
+
logger?: CrawleeLogger;
|
|
67
|
+
}): Promise<number>;
|
|
64
68
|
//# sourceMappingURL=cpu-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cpu-info.d.ts","sourceRoot":"","sources":["../../../src/internals/system-info/cpu-info.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAyBpD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,WAejC;AAcD;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAahF;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAU1E;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBlF;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,oBAiBtC;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAM/E;AAID;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACtC,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,aAAa,CAAA;CAAO,GAClE,OAAO,CAAC,MAAM,CAAC,CAsDjB"}
|