Scrubkit.Epub
1.7.0
Prefix Reserved
dotnet add package Scrubkit.Epub --version 1.7.0
NuGet\Install-Package Scrubkit.Epub -Version 1.7.0
<PackageReference Include="Scrubkit.Epub" Version="1.7.0" />
<PackageVersion Include="Scrubkit.Epub" Version="1.7.0" />
<PackageReference Include="Scrubkit.Epub" />
paket add Scrubkit.Epub --version 1.7.0
#r "nuget: Scrubkit.Epub, 1.7.0"
#:package Scrubkit.Epub@1.7.0
#addin nuget:?package=Scrubkit.Epub&version=1.7.0
#tool nuget:?package=Scrubkit.Epub&version=1.7.0
Scrubkit.Epub
An add-on IFileExtractor for
Scrubkit that reads .epub e-books —
fully offline, with no dependencies beyond Scrubkit.Abstractions.
- Body text — the book's XHTML spine, in reading order, with tags stripped and HTML entities decoded.
- Metadata —
Title/Author/Subjectfrom the OPF package metadata.
An EPUB is just a zip of XHTML, so this reads it with the BCL — the same technique the built-in Office and OpenDocument extractors use — and pulls in nothing extra.
Install
dotnet add package Scrubkit.Epub
Use it
Register the extractor via ReadOptions.Extractors. Registered extractors are tried before
the built-ins, so .epub files are routed here:
using Scrubkit;
var options = new ReadOptions();
options.Extractors.Add(new EpubExtractor());
var scrubber = new FolderScrubber(options);
foreach (var r in await scrubber.ReadAsync(@"C:\Books"))
Console.WriteLine($"{r.Name} — {r.Metadata.GetValueOrDefault("Title")} — {r.Text.Length} chars");
.epub files come back as Document rows.
Scope
Extracts readable text and the core metadata — best-effort, consistent with Scrubkit's
other extractors. Images, styling, and layout are not reproduced, and it never throws to the
batch (per-file problems surface as Warnings on the row).
License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Scrubkit.Abstractions (>= 1.7.0)
-
net8.0
- Scrubkit.Abstractions (>= 1.7.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Scrubkit.Epub:
| Package | Downloads |
|---|---|
|
Scrubkit.All
Convenience meta-package that references the entire Scrubkit family: the core (PDF/Office/text/image EXIF + CSV/JSON output), the extractor add-ons (.eml, OpenDocument, .epub), the AddScrubkit dependency-injection integration, and — on net8.0 — Parquet output. Install this to read everything out of the box; install the individual packages instead if you want a lean footprint. No code of its own. |
GitHub repositories
This package is not used by any popular GitHub repositories.
1.6.0 — Incremental scans. FolderScrubber.ReadChangesAsync(root, baseline) extracts only files added or modified since a Manifest (size + last-write time); returns the delta, removed paths, and a fresh complete manifest to persist. Manifest is a zero-dependency text sidecar (Save/Load/From). New ReadOptions.ExcludePaths keeps a run from ingesting its own output. CLI: --since / --manifest flags; output is now UTF-8 without a BOM. Full changelog: https://github.com/jjopensoftworks-blip/Scrubkit/blob/main/CHANGELOG.md