UNPKG

n8n-nodes-crawl4ai

Version:

n8n nodes for Crawl4AI web crawler and data extraction

80 lines 2.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.formatCrawlResult = formatCrawlResult; exports.parseExtractedJson = parseExtractedJson; exports.formatExtractionResult = formatExtractionResult; function formatCrawlResult(result, includeMedia = false, verboseResponse = false) { const formattedResult = { url: result.url, success: result.success, title: result.title || '', content: result.markdown || '', text: result.text || '', }; if (!result.success && result.error_message) { formattedResult.error = result.error_message; } if (result.extracted_content) { try { formattedResult.extractedContent = JSON.parse(result.extracted_content); } catch (e) { formattedResult.extractedContent = result.extracted_content; } } if (result.links) { formattedResult.links = { internal: result.links.internal, external: result.links.external, }; } if (includeMedia && result.media) { formattedResult.media = { images: result.media.images, videos: result.media.videos, }; } if (verboseResponse) { formattedResult.html = result.html || ''; formattedResult.cleanedHtml = result.cleaned_html || ''; formattedResult.statusCode = result.statusCode; formattedResult.crawlTime = result.crawl_time; formattedResult.metadata = result.metadata || {}; } return formattedResult; } function parseExtractedJson(result) { if (!result.extracted_content) { return null; } try { return JSON.parse(result.extracted_content); } catch (error) { return null; } } function formatExtractionResult(result, extractedData, includeFullText = false) { const formattedResult = { url: result.url, success: result.success, }; if (!result.success && result.error_message) { formattedResult.error = result.error_message; return formattedResult; } if (extractedData) { Object.entries(extractedData).forEach(([key, value]) => { formattedResult[key] = value; }); } else { formattedResult.extractionFailed = true; } if (includeFullText) { formattedResult.originalText = result.text || ''; formattedResult.title = result.title || ''; } return formattedResult; } //# sourceMappingURL=formatters.js.map