Skip to main content

isbnx

从 PDF、图片、EPUB、MOBI 和压缩包中智能提取 ISBN 号

Python License Documentation


安装

pip install isbnx
# 或
uv add isbnx

系统依赖

pyzbar(条形码解码):

  • Windows: 需要安装 Visual C++ 运行库
  • macOS: 设置环境变量 export DYLD_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_LIBRARY_PATH

pdf-inspector(可选,PDF 类型检测): 参考安装


快速开始

from isbnx import extract

result = extract("cover.png")
if result.success:
    print(result.bookinfo.isbn13)  # 9787123456789

# 优先从文件名提取(跳过内容扫描,更快)
result = extract("9787123456789_三体.epub", filename=True)

CLI

isbnx cover.png          # 提取并打印结果
isbnx --json book.pdf    # JSON 格式输出
isbnx --strict 2 book.zip
isbnx --filename 9787123456789.epub  # 从文件名提取

支持格式

类型 格式 提取策略
图片 PNG / JPG / WebP / BMP / PDG ONNX 检测 → OCR / 条码
PDF PDF 文本搜索 / 渲染检测
EPUB EPUB OPF 元数据 → XHTML 扫描
MOBI MOBI EXTH 元数据 → 文本扫描
压缩包 ZIP / RAR / 7Z / UVZ meta.xml → bookinfo.dat → PDG 图片

批量处理

对整个目录进行批量 ISBN 提取与文件整理:

from isbnx.batch import Batch

result = Batch(
    source_dir="D:/books",
    success_dir="D:/books/done",
    failed_dir="D:/books/unrecognized",
).run()
print(result)

也可配合 BatchConfig 自定义行为:

from isbnx.batch import Batch, BatchConfig

config = BatchConfig(
    rename_mode=3,         # 替换旧标识再追加(默认)
    extensions={".epub", ".pdf"},
    max_workers=4,
    keep_tree=True,        # 保留源目录结构
)
result = Batch(
    source_dir="D:/books",
    success_dir="D:/done",
    failed_dir="D:/fail",
    config=config,
    try_run=True,          # 先预览不实际移动
).run()

支持 4 种重命名模式、多线程并行、文件去重、干运行预览、CSV 报告导出、进度回调、优雅终止和源目录结构保留。


详细文档

完整文档、API 参考、提取流程请访问:

👉 isbnx.readthedocs.org

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

isbnx-0.0.17.tar.gz (10.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

isbnx-0.0.17-py3-none-any.whl (10.0 MB view details)

Uploaded Python 3

File details

Details for the file isbnx-0.0.17.tar.gz.

File metadata

  • Download URL: isbnx-0.0.17.tar.gz
  • Upload date:
  • Size: 10.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for isbnx-0.0.17.tar.gz
Algorithm Hash digest
SHA256 07bb8711da8a41c8ece684b2442c79d12af354bfab86f500fea75738a81dec9c
MD5 57d18805745cd72e4c4d4cf631d3a807
BLAKE2b-256 237ee0bc257496f7c9fb43ee9b91aebc8d40f5da4bd9dfb22f0847230e123f13

See more details on using hashes here.

File details

Details for the file isbnx-0.0.17-py3-none-any.whl.

File metadata

  • Download URL: isbnx-0.0.17-py3-none-any.whl
  • Upload date:
  • Size: 10.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for isbnx-0.0.17-py3-none-any.whl
Algorithm Hash digest
SHA256 5c6ffba2dae858d0a35896fc3fc1942163c754f0825819b9b82b1960724575cd
MD5 9d762ad33bb949217cc6ec8561d7d9e1
BLAKE2b-256 fd5357db7f3a6cfc70e7ecb719eab7728499726bcb7059adf6f55abff2678a6b

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.18

2 files

This release

0.0.17 This release

2 files

0.0.16

2 files

0.0.15

2 files

0.0.14

2 files

0.0.13

2 files

0.0.12

2 files

0.0.11

2 files

0.0.10

2 files

0.0.9

2 files

0.0.8

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page