defuddle 0.10.0 → 0.12.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.
Files changed (60) hide show
  1. package/README.md +95 -23
  2. package/dist/cli.js +2 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/constants.d.ts +2 -0
  5. package/dist/constants.js +20 -1
  6. package/dist/constants.js.map +1 -1
  7. package/dist/defuddle.d.ts +59 -1
  8. package/dist/defuddle.js +703 -214
  9. package/dist/defuddle.js.map +1 -1
  10. package/dist/elements/footnotes.js +2 -1
  11. package/dist/elements/footnotes.js.map +1 -1
  12. package/dist/extractor-registry.d.ts +1 -0
  13. package/dist/extractor-registry.js +3 -0
  14. package/dist/extractor-registry.js.map +1 -1
  15. package/dist/extractors/_base.d.ts +6 -0
  16. package/dist/extractors/_base.js +8 -0
  17. package/dist/extractors/_base.js.map +1 -1
  18. package/dist/extractors/github.d.ts +10 -2
  19. package/dist/extractors/github.js +158 -71
  20. package/dist/extractors/github.js.map +1 -1
  21. package/dist/extractors/hackernews.js +24 -77
  22. package/dist/extractors/hackernews.js.map +1 -1
  23. package/dist/extractors/reddit.d.ts +1 -2
  24. package/dist/extractors/reddit.js +41 -94
  25. package/dist/extractors/reddit.js.map +1 -1
  26. package/dist/extractors/x-oembed.d.ts +0 -1
  27. package/dist/extractors/x-oembed.js +20 -27
  28. package/dist/extractors/x-oembed.js.map +1 -1
  29. package/dist/extractors/youtube.d.ts +37 -0
  30. package/dist/extractors/youtube.js +409 -9
  31. package/dist/extractors/youtube.js.map +1 -1
  32. package/dist/index.d.ts +1 -1
  33. package/dist/index.full.js +1 -1
  34. package/dist/index.js +1 -1
  35. package/dist/markdown.js +5 -15
  36. package/dist/markdown.js.map +1 -1
  37. package/dist/metadata.d.ts +5 -0
  38. package/dist/metadata.js +28 -0
  39. package/dist/metadata.js.map +1 -1
  40. package/dist/node.js +0 -5
  41. package/dist/node.js.map +1 -1
  42. package/dist/scoring.d.ts +8 -2
  43. package/dist/scoring.js +109 -26
  44. package/dist/scoring.js.map +1 -1
  45. package/dist/standardize.js +103 -69
  46. package/dist/standardize.js.map +1 -1
  47. package/dist/types.d.ts +44 -0
  48. package/dist/utils/comments.d.ts +44 -0
  49. package/dist/utils/comments.js +103 -0
  50. package/dist/utils/comments.js.map +1 -0
  51. package/dist/utils/dom.d.ts +14 -0
  52. package/dist/utils/dom.js +34 -0
  53. package/dist/utils/dom.js.map +1 -1
  54. package/dist/utils/transcript.d.ts +37 -0
  55. package/dist/utils/transcript.js +61 -0
  56. package/dist/utils/transcript.js.map +1 -0
  57. package/dist/utils.d.ts +2 -1
  58. package/dist/utils.js +6 -2
  59. package/dist/utils.js.map +1 -1
  60. package/package.json +1 -1
package/README.md CHANGED
@@ -66,29 +66,29 @@ _Note: for `defuddle/node` to import properly, the module format in your `packag
66
66
 
67
67
  ### CLI
68
68
 
69
- Defuddle includes a command-line interface for parsing web pages directly from the terminal.
69
+ Defuddle includes a command-line interface for parsing web pages directly from the terminal. You can run it with `npx` or [install it globally](#cli-installation).
70
70
 
71
71
  ```bash
72
72
  # Parse a local HTML file
73
- defuddle parse page.html
73
+ npx defuddle parse page.html
74
74
 
75
75
  # Parse a URL
76
- defuddle parse https://example.com/article
76
+ npx defuddle parse https://example.com/article
77
77
 
78
78
  # Output as markdown
79
- defuddle parse page.html --markdown
79
+ npx defuddle parse page.html --markdown
80
80
 
81
81
  # Output as JSON with metadata
82
- defuddle parse page.html --json
82
+ npx defuddle parse page.html --json
83
83
 
84
84
  # Extract a specific property
85
- defuddle parse page.html --property title
85
+ npx defuddle parse page.html --property title
86
86
 
87
87
  # Save output to a file
88
- defuddle parse page.html --output result.html
88
+ npx defuddle parse page.html --output result.html
89
89
 
90
90
  # Enable debug mode
91
- defuddle parse page.html --debug
91
+ npx defuddle parse page.html --debug
92
92
  ```
93
93
 
94
94
  #### CLI Options
@@ -114,6 +114,20 @@ For Node.js usage, you'll also need to install JSDOM:
114
114
  npm install jsdom
115
115
  ```
116
116
 
117
+ ### CLI installation
118
+
119
+ To use the `defuddle` command globally, install it with the `-g` flag:
120
+
121
+ ```bash
122
+ npm install -g defuddle
123
+ ```
124
+
125
+ Or use `npx` to run the CLI without installing globally:
126
+
127
+ ```bash
128
+ npx defuddle parse https://example.com/article
129
+ ```
130
+
117
131
  ## Response
118
132
 
119
133
  Defuddle returns an object with the following properties:
@@ -126,6 +140,7 @@ Defuddle returns an object with the following properties:
126
140
  | `domain` | string | Domain name of the website |
127
141
  | `favicon` | string | URL of the website's favicon |
128
142
  | `image` | string | URL of the article's main image |
143
+ | `language` | string | Language of the page in [BCP 47](https://www.rfc-editor.org/info/bcp47) format (e.g. `en`, `en-US`) |
129
144
  | `metaTags` | object | Meta tags |
130
145
  | `parseTime` | number | Time taken to parse the page in milliseconds |
131
146
  | `published` | string | Publication date of the article |
@@ -133,6 +148,7 @@ Defuddle returns an object with the following properties:
133
148
  | `schemaOrgData` | object | Raw schema.org data extracted from the page |
134
149
  | `title` | string | Title of the article |
135
150
  | `wordCount` | number | Total number of words in the extracted content |
151
+ | `debug` | object | Debug info including content selector and removals (when `debug: true`) |
136
152
 
137
153
  ## Bundles
138
154
 
@@ -148,29 +164,20 @@ The core bundle is recommended for most use cases. It still handles math content
148
164
 
149
165
  | Option | Type | Default | Description |
150
166
  | ------------------------ | ------- | ------- | ------------------------------------------------------------------------- |
151
- | `debug` | boolean | false | Enable debug logging |
167
+ | `debug` | boolean | false | Enable debug logging and return debug info in the response |
152
168
  | `url` | string | | URL of the page being parsed |
153
169
  | `markdown` | boolean | false | Convert `content` to Markdown |
154
170
  | `separateMarkdown` | boolean | false | Keep `content` as HTML and return `contentMarkdown` as Markdown |
155
171
  | `removeExactSelectors` | boolean | true | Remove elements matching exact selectors like ads, social buttons, etc. |
156
172
  | `removePartialSelectors` | boolean | true | Remove elements matching partial selectors like ads, social buttons, etc. |
173
+ | `removeHiddenElements` | boolean | true | Remove elements hidden via CSS (display:none, visibility:hidden, etc.) |
174
+ | `removeLowScoring` | boolean | true | Remove non-content blocks by scoring (navigation, link lists, etc.) |
175
+ | `removeSmallImages` | boolean | true | Remove small images (icons, tracking pixels, etc.) |
157
176
  | `removeImages` | boolean | false | Remove images. |
177
+ | `standardize` | boolean | true | Standardize HTML (footnotes, headings, code blocks, etc.) |
178
+ | `contentSelector` | string | | CSS selector to use as the main content element, bypassing auto-detection |
158
179
  | `useAsync` | boolean | true | Allow async extractors to fetch from third-party APIs when no local content is available. |
159
180
 
160
- ### Debug mode
161
-
162
- You can enable debug mode by passing an options object when creating a new Defuddle instance:
163
-
164
- ```typescript
165
- const article = new Defuddle(document, { debug: true }).parse();
166
- ```
167
-
168
- - More verbose console logging about the parsing process
169
- - Preserves HTML class and id attributes that are normally stripped
170
- - Retains all data-* attributes
171
- - Skips div flattening to preserve document structure
172
-
173
-
174
181
  ## HTML standardization
175
182
 
176
183
  Defuddle attempts to standardize HTML elements to provide a consistent input for subsequent manipulation such as conversion to Markdown.
@@ -242,3 +249,68 @@ npm run build
242
249
  When using `parseAsync()`, if no content can be extracted from the local HTML, Defuddle may fetch content from third-party APIs as a fallback. This only happens when the page HTML contains no usable content (e.g. client-side rendered SPAs). You can disable this by setting `useAsync: false` in options.
243
250
 
244
251
  - [FxTwitter API](https://github.com/FixTweet/FxTwitter) — Used to extract X (Twitter) article content, which is not available in server-rendered HTML.
252
+
253
+ ## Debugging
254
+
255
+ ### Debug mode
256
+
257
+ You can enable debug mode by passing an options object when creating a new Defuddle instance:
258
+
259
+ ```typescript
260
+ const result = new Defuddle(document, { debug: true }).parse();
261
+
262
+ // Access debug info
263
+ console.log(result.debug.contentSelector); // CSS selector path of chosen main content element
264
+ console.log(result.debug.removals); // Array of removed elements with reasons
265
+ ```
266
+
267
+ When debug mode is enabled:
268
+
269
+ - Returns a `debug` field in the response with detailed information about content extraction
270
+ - More verbose console logging about the parsing process
271
+ - Preserves HTML class and id attributes that are normally stripped
272
+ - Retains all data-* attributes
273
+ - Skips div flattening to preserve document structure
274
+
275
+ The `debug` field contains:
276
+
277
+ | Property | Type | Description |
278
+ |----------|------|-------------|
279
+ | `contentSelector` | string | CSS selector path of the chosen main content element |
280
+ | `removals` | array | List of elements removed during processing |
281
+
282
+ Each removal entry contains:
283
+
284
+ | Property | Type | Description |
285
+ |----------|------|-------------|
286
+ | `step` | string | Pipeline step that removed the element (e.g. `removeLowScoring`, `removeBySelector`, `removeHiddenElements`) |
287
+ | `selector` | string | CSS selector or pattern that matched (for selector-based removal) |
288
+ | `reason` | string | Why the element was removed (e.g. `score: -20`, `display:none`) |
289
+ | `text` | string | First 200 characters of the removed element's text content |
290
+
291
+ ### Pipeline toggles
292
+
293
+ You can disable individual pipeline steps to diagnose content extraction issues:
294
+
295
+ ```typescript
296
+ // Skip content scoring to see if it's removing content incorrectly
297
+ const result = new Defuddle(document, { removeLowScoring: false }).parse();
298
+
299
+ // Skip hidden element removal (useful for CSS sidenote layouts)
300
+ const result = new Defuddle(document, { removeHiddenElements: false }).parse();
301
+
302
+ // Skip small image removal
303
+ const result = new Defuddle(document, { removeSmallImages: false }).parse();
304
+ ```
305
+
306
+ ### Content selector
307
+
308
+ Use `contentSelector` to bypass Defuddle's auto-detection and specify the main content element directly:
309
+
310
+ ```typescript
311
+ const result = new Defuddle(document, {
312
+ contentSelector: 'article.post-content'
313
+ }).parse();
314
+ ```
315
+
316
+ If the selector doesn't match any element, Defuddle falls back to auto-detection.
package/dist/cli.js CHANGED
@@ -114,7 +114,8 @@ program
114
114
  author: result.author,
115
115
  site: result.site,
116
116
  schemaOrgData: result.schemaOrgData,
117
- wordCount: result.wordCount
117
+ wordCount: result.wordCount,
118
+ ...(result.variables ? { variables: result.variables } : {}),
118
119
  }, null, 2);
119
120
  }
120
121
  else {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  export declare const ENTRY_POINT_ELEMENTS: string[];
2
2
  export declare const MOBILE_WIDTH = 600;
3
3
  export declare const BLOCK_ELEMENTS: string[];
4
+ export declare const BLOCK_ELEMENTS_SELECTOR: string;
5
+ export declare const BLOCK_ELEMENTS_SET: Set<string>;
4
6
  export declare const PRESERVE_ELEMENTS: Set<string>;
5
7
  export declare const INLINE_ELEMENTS: Set<string>;
6
8
  export declare const EXACT_SELECTORS: string[];
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ALLOWED_ATTRIBUTES_DEBUG = exports.ALLOWED_ATTRIBUTES = exports.ALLOWED_EMPTY_ELEMENTS = exports.FOOTNOTE_LIST_SELECTORS = exports.FOOTNOTE_INLINE_REFERENCES = exports.PARTIAL_SELECTORS = exports.TEST_ATTRIBUTES = exports.EXACT_SELECTORS = exports.INLINE_ELEMENTS = exports.PRESERVE_ELEMENTS = exports.BLOCK_ELEMENTS = exports.MOBILE_WIDTH = exports.ENTRY_POINT_ELEMENTS = void 0;
3
+ exports.ALLOWED_ATTRIBUTES_DEBUG = exports.ALLOWED_ATTRIBUTES = exports.ALLOWED_EMPTY_ELEMENTS = exports.FOOTNOTE_LIST_SELECTORS = exports.FOOTNOTE_INLINE_REFERENCES = exports.PARTIAL_SELECTORS = exports.TEST_ATTRIBUTES = exports.EXACT_SELECTORS = exports.INLINE_ELEMENTS = exports.PRESERVE_ELEMENTS = exports.BLOCK_ELEMENTS_SET = exports.BLOCK_ELEMENTS_SELECTOR = exports.BLOCK_ELEMENTS = exports.MOBILE_WIDTH = exports.ENTRY_POINT_ELEMENTS = void 0;
4
4
  // Entry point elements
5
5
  // These are the elements that will be used to find the main content
6
6
  exports.ENTRY_POINT_ELEMENTS = [
@@ -24,6 +24,8 @@ exports.ENTRY_POINT_ELEMENTS = [
24
24
  ];
25
25
  exports.MOBILE_WIDTH = 600;
26
26
  exports.BLOCK_ELEMENTS = ['div', 'section', 'article', 'main', 'aside', 'header', 'footer', 'nav', 'content'];
27
+ exports.BLOCK_ELEMENTS_SELECTOR = exports.BLOCK_ELEMENTS.join(',');
28
+ exports.BLOCK_ELEMENTS_SET = new Set(exports.BLOCK_ELEMENTS);
27
29
  // Elements that should not be unwrapped
28
30
  exports.PRESERVE_ELEMENTS = new Set([
29
31
  'pre', 'code', 'table', 'thead', 'tbody', 'tr', 'td', 'th',
@@ -114,6 +116,8 @@ exports.EXACT_SELECTORS = [
114
116
  '[href*="/author/"]',
115
117
  '[href*="/author?"]',
116
118
  '[href$="/author"]',
119
+ 'a[href*="copyright.com"]',
120
+ 'a[href*="google.com/preferences"]',
117
121
  '[href*="#toc"]',
118
122
  '[href="#top"]',
119
123
  '[href="#Top"]',
@@ -220,6 +224,7 @@ exports.PARTIAL_SELECTORS = [
220
224
  'activitypub',
221
225
  'actioncall',
222
226
  'addcomment',
227
+ 'addtoany',
223
228
  'advert',
224
229
  // '-ad-', howtogeek.com
225
230
  'adlayout',
@@ -227,6 +232,8 @@ exports.PARTIAL_SELECTORS = [
227
232
  'ad-placement',
228
233
  'ads-container',
229
234
  '_ad_',
235
+ 'AdBlock_',
236
+ 'AdUnit',
230
237
  'after_content',
231
238
  'after_main_article',
232
239
  'afterpost',
@@ -274,6 +281,7 @@ exports.PARTIAL_SELECTORS = [
274
281
  'articletopics',
275
282
  'article-topics',
276
283
  // 'article-type',
284
+ 'article-actions',
277
285
  'article--lede', // The Verge
278
286
  'articlewell',
279
287
  'associated-people',
@@ -372,6 +380,7 @@ exports.PARTIAL_SELECTORS = [
372
380
  'donate',
373
381
  'donation',
374
382
  'dropdown', // Ars Technica
383
+ 'element-invisible',
375
384
  'eletters',
376
385
  'emailsignup',
377
386
  'emoji-bar',
@@ -411,6 +420,7 @@ exports.PARTIAL_SELECTORS = [
411
420
  'frontmatter',
412
421
  'further-reading',
413
422
  'fullbleedheader',
423
+ 'gallery-count',
414
424
  'gated-',
415
425
  'gh-feed',
416
426
  'gist-meta',
@@ -437,11 +447,14 @@ exports.PARTIAL_SELECTORS = [
437
447
  'interlude',
438
448
  'interaction',
439
449
  'itemendrow',
450
+ 'intro-date',
440
451
  'invisible',
441
452
  'jp-no-solution',
453
+ 'jp-relatedposts',
442
454
  'jswarning',
443
455
  'js-warning',
444
456
  'jumplink',
457
+ 'jumpto',
445
458
  'jump-to-',
446
459
  'js-skip-to-content',
447
460
  'keepreading',
@@ -479,9 +492,12 @@ exports.PARTIAL_SELECTORS = [
479
492
  'menu-',
480
493
  // 'meta-', syntax highlighting
481
494
  'metadata',
495
+ 'meta-date',
496
+ 'meta-row',
482
497
  'might-like',
483
498
  'minibio',
484
499
  'more-about',
500
+ 'mod-paywall',
485
501
  '_modal',
486
502
  '-modal',
487
503
  'more-',
@@ -623,6 +639,7 @@ exports.PARTIAL_SELECTORS = [
623
639
  'related',
624
640
  'relevant',
625
641
  'reversefootnote',
642
+ 'robots-nocontent',
626
643
  '_rss',
627
644
  'rss-link',
628
645
  'screen-reader-text',
@@ -641,6 +658,7 @@ exports.PARTIAL_SELECTORS = [
641
658
  'share-post',
642
659
  'share-print',
643
660
  'share-section',
661
+ 'shariff-',
644
662
  'show-for-print',
645
663
  'sidebartitle',
646
664
  // 'sidebar_',
@@ -730,6 +748,7 @@ exports.PARTIAL_SELECTORS = [
730
748
  'u-hide',
731
749
  'upsell',
732
750
  'viewbottom',
751
+ 'yarpp-related',
733
752
  'visually-hidden',
734
753
  'welcomebox',
735
754
  'widget_pages',
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,23 @@ export declare class Defuddle {
3
3
  private readonly doc;
4
4
  private options;
5
5
  private debug;
6
+ private _schemaOrgData;
7
+ private _schemaOrgExtracted;
8
+ private _metaTags;
9
+ private _metadata;
10
+ private _mobileStyles;
11
+ private _smallImages;
6
12
  /**
7
13
  * Create a new Defuddle instance
8
14
  * @param doc - The document to parse
9
15
  * @param options - Options for parsing
10
16
  */
11
17
  constructor(doc: Document, options?: DefuddleOptions);
18
+ /**
19
+ * Lazily extract and cache schema.org data. Must be called before
20
+ * parse() strips script tags from the document.
21
+ */
22
+ private getSchemaOrgData;
12
23
  /**
13
24
  * Parse the document and extract its main content
14
25
  */
@@ -35,9 +46,20 @@ export declare class Defuddle {
35
46
  */
36
47
  private _getLargestImageSrc;
37
48
  /**
38
- * Parse the document, falling back to async extractors if sync parse yields no content
49
+ * Parse the document asynchronously. Checks for extractors that prefer
50
+ * async (e.g. YouTube transcripts) before sync, then falls back to async
51
+ * extractors if sync parse yields no content.
39
52
  */
40
53
  parseAsync(): Promise<DefuddleResponse>;
54
+ /**
55
+ * Fetch only async variables (e.g. transcript) without re-parsing.
56
+ * Safe to call after parse() — uses cached schema.org data since
57
+ * parse() strips script tags from the document.
58
+ */
59
+ fetchAsyncVariables(): Promise<{
60
+ [key: string]: string;
61
+ } | null>;
62
+ private tryAsyncExtractor;
41
63
  /**
42
64
  * Internal parse method that does the actual work
43
65
  */
@@ -61,6 +83,24 @@ export declare class Defuddle {
61
83
  * Resolve relative URLs to absolute within a DOM element
62
84
  */
63
85
  private resolveRelativeUrls;
86
+ /**
87
+ * Flatten shadow DOM content into a cloned document.
88
+ * Walks both trees in parallel so positional correspondence is exact.
89
+ */
90
+ private flattenShadowRoots;
91
+ /**
92
+ * Resolve React streaming SSR suspense boundaries.
93
+ * React's streaming SSR places content in hidden divs (id="S:0") and
94
+ * template placeholders (id="B:0") with $RC scripts to swap them.
95
+ * Since we don't execute scripts, we perform the swap manually.
96
+ */
97
+ private resolveStreamedContent;
98
+ /**
99
+ * Replace a shadow DOM host element with a div containing its shadow content.
100
+ * Custom elements (tag names with hyphens) would re-initialize when inserted
101
+ * into a live DOM, recreating their shadow roots and hiding the content.
102
+ */
103
+ private replaceShadowHost;
64
104
  /**
65
105
  * Resolve relative URLs in an HTML string
66
106
  */
@@ -68,4 +108,22 @@ export declare class Defuddle {
68
108
  private _extractSchemaOrgData;
69
109
  private _collectMetaTags;
70
110
  private _decodeHTMLEntities;
111
+ /**
112
+ * Build a DefuddleResponse from an extractor result with metadata
113
+ */
114
+ private buildExtractorResponse;
115
+ /**
116
+ * Filter extractor variables to only include custom ones
117
+ * (exclude standard fields that are already mapped to top-level properties)
118
+ */
119
+ private getExtractorVariables;
120
+ /**
121
+ * Content-based pattern removal for elements that can't be detected by
122
+ * CSS selectors (e.g. Tailwind/CSS-in-JS sites with non-semantic class names).
123
+ */
124
+ private removeByContentPattern;
125
+ /**
126
+ * Remove an element's following siblings, and optionally the element itself.
127
+ */
128
+ private removeTrailingSiblings;
71
129
  }