@adobe/spacecat-shared-utils 1.90.3 → 1.91.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.
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
# [@adobe/spacecat-shared-utils-v1.91.0](https://github.com/adobe/spacecat-shared/compare/@adobe/spacecat-shared-utils-v1.90.3...@adobe/spacecat-shared-utils-v1.91.0) (2026-02-08)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* Bot press hold detection addition + add abort info to scrapeJob schema ([#1308](https://github.com/adobe/spacecat-shared/issues/1308)) ([4f19f91](https://github.com/adobe/spacecat-shared/commit/4f19f9143435aa283d8b9e57c17dd79873168177))
|
|
7
|
+
|
|
1
8
|
# [@adobe/spacecat-shared-utils-v1.90.3](https://github.com/adobe/spacecat-shared/compare/@adobe/spacecat-shared-utils-v1.90.2...@adobe/spacecat-shared-utils-v1.90.3) (2026-02-06)
|
|
2
9
|
|
|
3
10
|
|
package/package.json
CHANGED
|
@@ -99,6 +99,14 @@ const CHALLENGE_PATTERNS = {
|
|
|
99
99
|
/hcaptcha/i,
|
|
100
100
|
/datadome/i,
|
|
101
101
|
/dd-request-id/i,
|
|
102
|
+
/press.*hold/i, // Press and hold challenges (hCaptcha, custom implementations)
|
|
103
|
+
/click.*hold/i, // Click and hold button challenges
|
|
104
|
+
/geetest/i, // GeeTest interactive challenges
|
|
105
|
+
/arkose/i, // Arkose Labs bot protection
|
|
106
|
+
/funcaptcha/i, // FunCaptcha interactive challenges
|
|
107
|
+
/interactive.*challenge/i, // Generic interactive challenges
|
|
108
|
+
/verify.*human.*interaction/i, // Human interaction verification
|
|
109
|
+
/prove.*you.*are.*human/i, // Proof of humanity challenges
|
|
102
110
|
],
|
|
103
111
|
};
|
|
104
112
|
|
package/src/url-helpers.js
CHANGED
|
@@ -145,7 +145,12 @@ async function resolveCanonicalUrl(urlString, method = 'HEAD') {
|
|
|
145
145
|
let resp;
|
|
146
146
|
|
|
147
147
|
try {
|
|
148
|
-
|
|
148
|
+
const timeout = method === 'HEAD' ? 10000 : 20000; // 10s for HEAD, 20s for GET
|
|
149
|
+
resp = await fetch(urlString, {
|
|
150
|
+
headers,
|
|
151
|
+
method,
|
|
152
|
+
signal: AbortSignal.timeout(timeout),
|
|
153
|
+
});
|
|
149
154
|
|
|
150
155
|
if (resp.ok) {
|
|
151
156
|
return ensureHttps(resp.url);
|