webpeel 0.9.0 → 0.10.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/README.md +39 -4
- package/dist/cli-auth.d.ts +6 -0
- package/dist/cli-auth.d.ts.map +1 -1
- package/dist/cli-auth.js.map +1 -1
- package/dist/cli.js +463 -22
- package/dist/cli.js.map +1 -1
- package/dist/core/challenge-detection.d.ts.map +1 -1
- package/dist/core/challenge-detection.js +39 -6
- package/dist/core/challenge-detection.js.map +1 -1
- package/dist/core/extract-listings.d.ts.map +1 -1
- package/dist/core/extract-listings.js +167 -36
- package/dist/core/extract-listings.js.map +1 -1
- package/dist/core/fetcher.d.ts +6 -0
- package/dist/core/fetcher.d.ts.map +1 -1
- package/dist/core/fetcher.js +147 -11
- package/dist/core/fetcher.js.map +1 -1
- package/dist/core/hotel-search.d.ts +121 -0
- package/dist/core/hotel-search.d.ts.map +1 -0
- package/dist/core/hotel-search.js +381 -0
- package/dist/core/hotel-search.js.map +1 -0
- package/dist/core/llm-extract.d.ts +42 -0
- package/dist/core/llm-extract.d.ts.map +1 -0
- package/dist/core/llm-extract.js +144 -0
- package/dist/core/llm-extract.js.map +1 -0
- package/dist/core/profiles.d.ts +48 -0
- package/dist/core/profiles.d.ts.map +1 -0
- package/dist/core/profiles.js +211 -0
- package/dist/core/profiles.js.map +1 -0
- package/dist/core/schema-extraction.d.ts +67 -0
- package/dist/core/schema-extraction.d.ts.map +1 -0
- package/dist/core/schema-extraction.js +353 -0
- package/dist/core/schema-extraction.js.map +1 -0
- package/dist/core/strategies.d.ts +5 -0
- package/dist/core/strategies.d.ts.map +1 -1
- package/dist/core/strategies.js +9 -2
- package/dist/core/strategies.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -82,6 +82,8 @@ function detectCloudflare(html, statusCode) {
|
|
|
82
82
|
}
|
|
83
83
|
function detectPerimeterX(html, statusCode) {
|
|
84
84
|
let score = 0;
|
|
85
|
+
// Use lowercase for case-insensitive matching of new Expedia-style signals
|
|
86
|
+
const htmlLower = html.toLowerCase();
|
|
85
87
|
const signals = [
|
|
86
88
|
'perimeterx',
|
|
87
89
|
'_pxhd',
|
|
@@ -97,26 +99,36 @@ function detectPerimeterX(html, statusCode) {
|
|
|
97
99
|
];
|
|
98
100
|
const count = countMatches(html, signals);
|
|
99
101
|
score += Math.min(count * 0.3, 0.8);
|
|
100
|
-
|
|
102
|
+
// Case-insensitive Expedia/PerimeterX-specific signals
|
|
103
|
+
const expediaSignals = [
|
|
104
|
+
'human or a bot',
|
|
105
|
+
'show us your human side',
|
|
106
|
+
'human-side',
|
|
107
|
+
'bot or not',
|
|
108
|
+
];
|
|
109
|
+
const expediaCount = countMatches(htmlLower, expediaSignals);
|
|
110
|
+
score += Math.min(expediaCount * 0.25, 0.6);
|
|
111
|
+
const title = extractTitle(htmlLower);
|
|
101
112
|
if (title.includes('access denied') ||
|
|
102
113
|
title.includes('has been denied') ||
|
|
103
114
|
title.includes('access to this page') ||
|
|
104
115
|
title.includes('please verify') ||
|
|
105
116
|
title.includes('bot detection') ||
|
|
106
|
-
title.includes('pardon our interruption')
|
|
117
|
+
title.includes('pardon our interruption') ||
|
|
118
|
+
title.includes('bot or not')) {
|
|
107
119
|
score += 0.15;
|
|
108
120
|
}
|
|
109
121
|
// PerimeterX "Press & Hold" challenge page (used by Zillow, etc.)
|
|
110
|
-
const hasPresssHold = has(html, 'Press & Hold') || has(html, 'Press & Hold') || has(
|
|
111
|
-
const hasHumanCheck = has(
|
|
122
|
+
const hasPresssHold = has(html, 'Press & Hold') || has(html, 'Press & Hold') || has(htmlLower, 'press and hold');
|
|
123
|
+
const hasHumanCheck = has(htmlLower, 'confirm you are human') || has(htmlLower, 'confirm you area human') || has(htmlLower, 'not a bot') || has(htmlLower, 'human or a bot') || has(htmlLower, 'show us your human side') || has(htmlLower, 'bot or not');
|
|
112
124
|
if (hasPresssHold && hasHumanCheck) {
|
|
113
125
|
score += 0.5;
|
|
114
126
|
}
|
|
115
127
|
else if (hasPresssHold || hasHumanCheck) {
|
|
116
128
|
score += 0.2;
|
|
117
129
|
}
|
|
118
|
-
// Reference ID pattern is common in PerimeterX block pages
|
|
119
|
-
if (/reference\s+id
|
|
130
|
+
// Reference ID pattern is common in PerimeterX block pages (supports "Reference ID:" and "Reference ID " formats)
|
|
131
|
+
if (/reference\s+id[:\s]+[0-9a-f-]{20,}/i.test(html)) {
|
|
120
132
|
score += 0.2;
|
|
121
133
|
}
|
|
122
134
|
if (statusCode === 403 && score > 0) {
|
|
@@ -228,6 +240,10 @@ function detectGenericBlock(html, statusCode) {
|
|
|
228
240
|
'human verification',
|
|
229
241
|
'blocked by',
|
|
230
242
|
'pardon our interruption',
|
|
243
|
+
'bot or not',
|
|
244
|
+
'blocked',
|
|
245
|
+
'verification required',
|
|
246
|
+
'are you a robot',
|
|
231
247
|
];
|
|
232
248
|
for (const t of blockTitles) {
|
|
233
249
|
if (title.includes(t)) {
|
|
@@ -263,6 +279,23 @@ function detectGenericBlock(html, statusCode) {
|
|
|
263
279
|
'why have i been blocked',
|
|
264
280
|
'your access has been blocked',
|
|
265
281
|
'detected unusual activity',
|
|
282
|
+
// New patterns for additional challenge pages
|
|
283
|
+
'human or a bot',
|
|
284
|
+
'show us your human side',
|
|
285
|
+
'bot or not',
|
|
286
|
+
'complete a captcha',
|
|
287
|
+
'solve this puzzle',
|
|
288
|
+
'verify your identity',
|
|
289
|
+
'unusual traffic',
|
|
290
|
+
'too many requests',
|
|
291
|
+
'access denied',
|
|
292
|
+
'automated traffic',
|
|
293
|
+
'we need to verify',
|
|
294
|
+
'human verification',
|
|
295
|
+
'browser verification',
|
|
296
|
+
'checking your browser',
|
|
297
|
+
'please wait while we verify',
|
|
298
|
+
'blocked by',
|
|
266
299
|
];
|
|
267
300
|
const bodyCount = countMatches(html, bodySignals);
|
|
268
301
|
// Require at least 2 body signals to avoid flagging a blog post mentioning one
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenge-detection.js","sourceRoot":"","sources":["../../src/core/challenge-detection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"challenge-detection.js","sourceRoot":"","sources":["../../src/core/challenge-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-listings.d.ts","sourceRoot":"","sources":["../../src/core/extract-listings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,uCAAuC;AACvC,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;
|
|
1
|
+
{"version":3,"file":"extract-listings.d.ts","sourceRoot":"","sources":["../../src/core/extract-listings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,uCAAuC;AACvC,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;AAsbD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAiBzE"}
|
|
@@ -104,35 +104,40 @@ function findListingContainer($) {
|
|
|
104
104
|
}
|
|
105
105
|
continue;
|
|
106
106
|
}
|
|
107
|
-
//
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
107
|
+
// Build signature clusters: each distinct (incompatible) signature group
|
|
108
|
+
// becomes its own candidate. This is critical for table-based layouts like
|
|
109
|
+
// Hacker News where story rows (td:3) and subtext rows (td:2) are siblings
|
|
110
|
+
// in the same tbody — we need BOTH as candidates so content scoring can
|
|
111
|
+
// choose the right one (article titles beat usernames).
|
|
112
|
+
const sigGroups = [];
|
|
113
|
+
for (const { child, sig } of withSig) {
|
|
114
|
+
let placed = false;
|
|
115
|
+
for (const group of sigGroups) {
|
|
116
|
+
if (signaturesAreSimilar(sig, group.repr)) {
|
|
117
|
+
group.children.push(child);
|
|
118
|
+
placed = true;
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (!placed) {
|
|
123
|
+
sigGroups.push({ repr: sig, children: [child] });
|
|
118
124
|
}
|
|
119
125
|
}
|
|
120
|
-
//
|
|
121
|
-
|
|
122
|
-
const matching = withSig
|
|
123
|
-
.filter(c => signaturesAreSimilar(c.sig, dominantSig))
|
|
124
|
-
.map(c => c.child);
|
|
125
|
-
// Also include text-only children that have meaningful content
|
|
126
|
+
// Text-only (no-sig) children with meaningful content go into the largest group
|
|
127
|
+
const largestGroup = sigGroups.reduce((best, g) => (!best || g.children.length > best.children.length) ? g : best, null);
|
|
126
128
|
for (const { child } of withoutSig) {
|
|
127
|
-
if ($(child).text().trim().length > 3) {
|
|
128
|
-
|
|
129
|
+
if (largestGroup && $(child).text().trim().length > 3) {
|
|
130
|
+
largestGroup.children.push(child);
|
|
129
131
|
}
|
|
130
132
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
133
|
+
// Generate a candidate for each significant cluster (count >= 3)
|
|
134
|
+
for (const group of sigGroups) {
|
|
135
|
+
if (group.children.length < 3)
|
|
136
|
+
continue;
|
|
137
|
+
const consistency = group.children.length / tagChildren.length;
|
|
138
|
+
const score = group.children.length * consistency;
|
|
139
|
+
candidates.push({ parent: el, tag, children: group.children, score });
|
|
140
|
+
}
|
|
136
141
|
}
|
|
137
142
|
});
|
|
138
143
|
if (candidates.length === 0)
|
|
@@ -172,6 +177,88 @@ function findListingContainer($) {
|
|
|
172
177
|
}
|
|
173
178
|
/** Price-matching regex — $12.34, £99, €5,00, etc. */
|
|
174
179
|
const PRICE_RE = /(?:[\$£€¥₹])\s*[\d,]+(?:\.\d{1,2})?|[\d,]+(?:\.\d{1,2})?\s*(?:USD|EUR|GBP|JPY|INR)/i;
|
|
180
|
+
/**
|
|
181
|
+
* Common title prefixes injected by marketplaces (e.g. eBay's "New Listing")
|
|
182
|
+
* that should be stripped from extracted titles.
|
|
183
|
+
*/
|
|
184
|
+
const TITLE_STRIP_PREFIXES = [
|
|
185
|
+
/^New\s+Listing\s*/i,
|
|
186
|
+
/^Sponsored\s*/i,
|
|
187
|
+
/^Opens\s+in\s+(?:a\s+)?new\s+(?:window|tab)(?:\s+or\s+(?:window|tab))?\s*/i,
|
|
188
|
+
/^Advertisement\s*/i,
|
|
189
|
+
/^Ad\s*[-–—:·]\s*/i,
|
|
190
|
+
/^Promoted\s*[-–—:·]?\s*/i,
|
|
191
|
+
];
|
|
192
|
+
/**
|
|
193
|
+
* Common section-header / junk words that appear as single-word titles in
|
|
194
|
+
* listing pages (e.g. Amazon's "Results" header, eBay's "Sponsored" label).
|
|
195
|
+
*/
|
|
196
|
+
const HEADER_WORDS = new Set([
|
|
197
|
+
'results', 'sponsored', 'related', 'advertisement', 'shop', 'browse',
|
|
198
|
+
'featured', 'popular', 'trending', 'new', 'sale', 'deals', 'more',
|
|
199
|
+
'filters', 'sort', 'categories', 'departments', 'navigation',
|
|
200
|
+
]);
|
|
201
|
+
/**
|
|
202
|
+
* Return true if a title string looks like a section header or junk rather
|
|
203
|
+
* than a real listing title.
|
|
204
|
+
*/
|
|
205
|
+
function isHeaderOrJunk(title) {
|
|
206
|
+
if (!title)
|
|
207
|
+
return true;
|
|
208
|
+
if (title.length <= 3)
|
|
209
|
+
return true;
|
|
210
|
+
// Pure numbers or rank numbers like "10." "21." "100"
|
|
211
|
+
if (/^\d+\.?$/.test(title))
|
|
212
|
+
return true;
|
|
213
|
+
// Single word that matches a known header term
|
|
214
|
+
if (!/\s/.test(title) && HEADER_WORDS.has(title.toLowerCase()))
|
|
215
|
+
return true;
|
|
216
|
+
return false;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Common title suffixes that appear at the end of listing titles due to
|
|
220
|
+
* accessibility text embedded in links (e.g. eBay's "Opens in a new window or tab").
|
|
221
|
+
*/
|
|
222
|
+
const TITLE_STRIP_SUFFIXES = [
|
|
223
|
+
// "Opens in new window" / "Opens in a new tab" / "Opens in new window or tab" etc.
|
|
224
|
+
/\s*Opens\s+in\s+(?:a\s+)?new\s+(?:window|tab)(?:\s+or\s+(?:window|tab))?$/i,
|
|
225
|
+
// Parenthesized variant: "(opens in a new window)"
|
|
226
|
+
/\s*\(opens\s+(?:in\s+)?(?:a\s+)?new\s+(?:window|tab)\)$/i,
|
|
227
|
+
// Dash variant: "- New window"
|
|
228
|
+
/\s*[-–—]\s*New\s+window$/i,
|
|
229
|
+
/\s*Sponsored$/i,
|
|
230
|
+
];
|
|
231
|
+
/**
|
|
232
|
+
* Clean concatenated title artifacts that appear on travel/hotel aggregators
|
|
233
|
+
* (e.g. Google Travel where price, source and rating get concatenated into the title).
|
|
234
|
+
*/
|
|
235
|
+
function cleanConcatenatedTitle(title) {
|
|
236
|
+
let cleaned = title;
|
|
237
|
+
// Strip price suffixes: "$149 Booking.com...", "$179Hyatt Place...", "£99 Hotels.com...", "$149" at end
|
|
238
|
+
// Handles both spaced ("$179 Hyatt") and concatenated ("$179Hyatt") from Google Travel etc.
|
|
239
|
+
cleaned = cleaned.replace(/[\$£€]\d[\d,.]*(?:\s+[A-Z].*|\S+.*)?$/i, '').trim();
|
|
240
|
+
// Strip rating suffixes: "4.2/5 (1.4K)" or "4.5 out of 5"
|
|
241
|
+
cleaned = cleaned.replace(/\d+\.?\d*\/5\s*\(.*$/i, '').trim();
|
|
242
|
+
// Strip star ratings: "· 3-star hotel" or "- 4 star"
|
|
243
|
+
cleaned = cleaned.replace(/\s*[·\-–]\s*\d+-?star\s.*$/i, '').trim();
|
|
244
|
+
// Strip source labels that got concatenated: "Expedia.com" at end
|
|
245
|
+
cleaned = cleaned.replace(/(?:Booking|Expedia|Hotels|Kayak|Trivago|Priceline|Agoda)\.com.*$/i, '').trim();
|
|
246
|
+
return cleaned || title; // fallback to original if over-stripped
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Strip known marketplace prefixes and suffixes from a title string,
|
|
250
|
+
* then clean up any concatenated artifacts.
|
|
251
|
+
*/
|
|
252
|
+
function stripTitlePrefixes(title) {
|
|
253
|
+
let t = title;
|
|
254
|
+
for (const prefix of TITLE_STRIP_PREFIXES) {
|
|
255
|
+
t = t.replace(prefix, '');
|
|
256
|
+
}
|
|
257
|
+
for (const suffix of TITLE_STRIP_SUFFIXES) {
|
|
258
|
+
t = t.replace(suffix, '');
|
|
259
|
+
}
|
|
260
|
+
return cleanConcatenatedTitle(t.trim());
|
|
261
|
+
}
|
|
175
262
|
/**
|
|
176
263
|
* Resolve a potentially relative URL against a base URL.
|
|
177
264
|
* Returns the original string if resolution fails.
|
|
@@ -196,27 +283,53 @@ function resolveUrl(href, baseUrl) {
|
|
|
196
283
|
function extractItem($, el, baseUrl) {
|
|
197
284
|
const $el = $(el);
|
|
198
285
|
const item = {};
|
|
199
|
-
// --- Title ---
|
|
286
|
+
// --- Title + Title-source element (used later for preferred link) ---
|
|
200
287
|
// Priority: heading > [class*="title"]/[class*="name"] text or inner link text > first <a> text
|
|
288
|
+
let titleSourceEl = null;
|
|
201
289
|
const heading = $el.find('h1, h2, h3, h4, h5, h6').first();
|
|
202
290
|
if (heading.length && heading.text().trim().length >= 3) {
|
|
203
|
-
item.title = heading.text().trim();
|
|
291
|
+
item.title = stripTitlePrefixes(heading.text().trim());
|
|
292
|
+
titleSourceEl = heading;
|
|
204
293
|
}
|
|
205
294
|
else {
|
|
206
295
|
// Iterate ALL title/name class matches (not just .first()) — some sites
|
|
207
296
|
// have multiple elements with "title" in their class (e.g. HN has a rank
|
|
208
297
|
// cell and a title cell both with class="title").
|
|
298
|
+
// Two-pass approach: first prefer candidates that have an inner link
|
|
299
|
+
// (avoids picking rank numbers like "10." which appear before the real
|
|
300
|
+
// title cell in Hacker News rows), then fall back to linkless candidates.
|
|
209
301
|
const titleCandidates = $el.find('[class*="title"], [class*="name"], [class*="Title"], [class*="Name"]');
|
|
302
|
+
// Pass 1: title-class elements with inner <a> links
|
|
210
303
|
titleCandidates.each((_, tc) => {
|
|
211
304
|
if (item.title)
|
|
212
|
-
return;
|
|
305
|
+
return;
|
|
213
306
|
const $tc = $(tc);
|
|
214
307
|
const innerLink = $tc.find('a').first();
|
|
215
|
-
|
|
308
|
+
if (!innerLink.length)
|
|
309
|
+
return; // no link — skip in pass 1
|
|
310
|
+
const candidateText = innerLink.text().trim();
|
|
216
311
|
if (candidateText.length >= 3) {
|
|
217
|
-
item.title = candidateText;
|
|
312
|
+
item.title = stripTitlePrefixes(candidateText);
|
|
313
|
+
titleSourceEl = $tc;
|
|
218
314
|
}
|
|
219
315
|
});
|
|
316
|
+
// Pass 2: title-class elements without inner links (requires longer text
|
|
317
|
+
// to avoid picking up rank numbers like "10.")
|
|
318
|
+
if (!item.title) {
|
|
319
|
+
titleCandidates.each((_, tc) => {
|
|
320
|
+
if (item.title)
|
|
321
|
+
return;
|
|
322
|
+
const $tc = $(tc);
|
|
323
|
+
const innerLink = $tc.find('a').first();
|
|
324
|
+
if (innerLink.length)
|
|
325
|
+
return; // has link — already handled in pass 1
|
|
326
|
+
const candidateText = $tc.text().trim();
|
|
327
|
+
if (candidateText.length >= 8) { // higher threshold for linkless elements
|
|
328
|
+
item.title = stripTitlePrefixes(candidateText);
|
|
329
|
+
titleSourceEl = $tc;
|
|
330
|
+
}
|
|
331
|
+
});
|
|
332
|
+
}
|
|
220
333
|
if (!item.title) {
|
|
221
334
|
// Fall back to first <a> with meaningful text
|
|
222
335
|
$el.find('a').each((_, a) => {
|
|
@@ -224,7 +337,8 @@ function extractItem($, el, baseUrl) {
|
|
|
224
337
|
return;
|
|
225
338
|
const text = $(a).text().trim();
|
|
226
339
|
if (text.length >= 3) {
|
|
227
|
-
item.title = text;
|
|
340
|
+
item.title = stripTitlePrefixes(text);
|
|
341
|
+
titleSourceEl = $(a);
|
|
228
342
|
}
|
|
229
343
|
});
|
|
230
344
|
}
|
|
@@ -251,11 +365,26 @@ function extractItem($, el, baseUrl) {
|
|
|
251
365
|
item.image = resolveUrl(src, baseUrl);
|
|
252
366
|
}
|
|
253
367
|
// --- Link ---
|
|
254
|
-
// Prefer the link associated with the title
|
|
255
|
-
//
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
368
|
+
// Prefer the link associated with the title element we found, falling back
|
|
369
|
+
// to any <a[href]> in the listing. Using titleSourceEl avoids accidentally
|
|
370
|
+
// picking up vote / action links that appear before the article link in the DOM
|
|
371
|
+
// (e.g. Hacker News vote arrows before the story title link).
|
|
372
|
+
let primaryLink = null;
|
|
373
|
+
if (titleSourceEl) {
|
|
374
|
+
const titleElTag = titleSourceEl.prop('tagName')?.toLowerCase();
|
|
375
|
+
if (titleElTag === 'a') {
|
|
376
|
+
// The title source IS the link itself
|
|
377
|
+
primaryLink = titleSourceEl;
|
|
378
|
+
}
|
|
379
|
+
else {
|
|
380
|
+
const innerLink = titleSourceEl.find('a[href]').first();
|
|
381
|
+
if (innerLink.length)
|
|
382
|
+
primaryLink = innerLink;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
if (!primaryLink || !primaryLink.length) {
|
|
386
|
+
primaryLink = $el.find('a[href]').first();
|
|
387
|
+
}
|
|
259
388
|
if (primaryLink && primaryLink.length) {
|
|
260
389
|
item.link = resolveUrl(primaryLink.attr('href'), baseUrl);
|
|
261
390
|
}
|
|
@@ -321,9 +450,11 @@ export function extractListings(html, url) {
|
|
|
321
450
|
const items = [];
|
|
322
451
|
for (const child of container.children) {
|
|
323
452
|
const item = extractItem($, child, url);
|
|
324
|
-
// Filter out empty / too-short titles
|
|
453
|
+
// Filter out empty / too-short titles and known header/junk words
|
|
325
454
|
if (!item.title || item.title.length < 3)
|
|
326
455
|
continue;
|
|
456
|
+
if (isHeaderOrJunk(item.title))
|
|
457
|
+
continue;
|
|
327
458
|
items.push(item);
|
|
328
459
|
}
|
|
329
460
|
return items;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-listings.js","sourceRoot":"","sources":["../../src/core/extract-listings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extract-listings.js","sourceRoot":"","sources":["../../src/core/extract-listings.ts"],"names":[],"mappings":"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"}
|
package/dist/core/fetcher.d.ts
CHANGED
|
@@ -52,6 +52,12 @@ export declare function browserFetch(url: string, options?: {
|
|
|
52
52
|
profileDir?: string;
|
|
53
53
|
/** Launch browser in headed (visible) mode. Only meaningful with profileDir or for debugging. */
|
|
54
54
|
headed?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Playwright storage state (cookies + localStorage) to inject into the browser context.
|
|
57
|
+
* When provided, a new BrowserContext is created with this state, which is more reliable
|
|
58
|
+
* than --user-data-dir for session injection.
|
|
59
|
+
*/
|
|
60
|
+
storageState?: any;
|
|
55
61
|
}): Promise<FetchResult>;
|
|
56
62
|
/**
|
|
57
63
|
* Retry a fetch operation with exponential backoff
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../src/core/fetcher.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,EAA0B,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAM/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../../src/core/fetcher.ts"],"names":[],"mappings":"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"}
|