Skip to main content

A tool kit package

Project description

syize/一个简单好用的工具箱

syize 是一个集合了多种实用工具的 Python 包,主要用于处理字符串、图片、PDF、Fortran 代码、NetCDF 数据以及电视节目管理等任务。这些工具是为了简化日常开发、数据分析和处理工作而设计的。

功能模块

1. 字符串处理 (syize.string)

  • 格式化字符串format_string - 自动格式化字符串,去除冗余换行符
  • 去除冗余换行remove_redundant_linebreak - 智能处理文本中的换行符

2. 图片处理 (syize.picture)

  • 图片转文字picture_to_string - 使用 OCR 技术从图片中提取文本(支持中文和英文)
  • PDF转图片pdf_to_picture - 将 PDF 文件转换为图片(PNG格式)

3. 代码处理 (syize.fortran)

  • Fortran代码解析entry_parse_fortran - 解析和格式化 Fortran 代码
  • 代码格式化:包含对 Fortran 代码的格式化和处理工具

4. 数据处理 (syize.nc)

  • NetCDF数据查看NCView - 提供交互式界面查看 NetCDF 数据文件
  • 数据交互:支持查看数据集属性、坐标、变量和数据内容

5. 可视化 (syize.plot)

  • 地图绘制:包含地图可视化相关工具(基于 Cartopy)
  • 绘图辅助:提供颜色条制备和图表调整功能

6. 电视节目管理 (syize.tv_show_manage)

  • 节目排序entry_sort_episode - 识别并排序剧集文件
  • 重命名entry_rename_episode_file - 重命名剧集文件
  • 文件识别:支持多种剧集编号格式

7. Qt 界面 (syize.qt)

  • 下载器Downloader - 提供下载文件的图形界面
  • 下载管理:支持下载参数配置和进度监控

安装

使用 pip 安装:

pip install syize

或者通过源码安装:

git clone <repository_url>
cd syize-toolkits
pip install .

命令行使用

syize 提供了两个主要的命令行工具:

1. syize - 通用工具箱

syize -h  # 显示帮助信息
syize list  # 列出当前目录所有文件
syize ocr -i image.png -o output.txt  # 图片转文字
syize pdf -i document.pdf -o ./images  # PDF转图片
syize str -i input.txt -o output.txt  # 格式化字符串
syize nc -i data.nc  # 查看NetCDF数据
syize ft -i code.f90 -o formatted_code.f90  # 格式化Fortran代码

2. tvsm - 电视节目管理工具

tvsm -h  # 显示帮助信息
tvsm sort "Episode %%d"  # 排序剧集文件
tvsm rename "MyShow S01E"  # 重命名剧集文件

依赖

项目依赖以下 Python 包:

  • Pillow, pytesseract (图片处理)
  • pdf2image (PDF处理)
  • rich (终端美化)
  • matplotlib, Cartopy (可视化)
  • haversine (地理计算)
  • pyside6 (GUI界面)
  • prompt-toolkit (交互式命令)
  • xarray, netcdf4, numpy (数据处理)
  • requests (网络请求)

开发

项目使用 Meson 构建系统:

meson setup build
cd build
ninja

文档

完整的 API 文档可以在 docs/ 目录中找到,使用 Sphinx 生成。

许可证

本项目采用 GPL-3.0-or-later 许可证。

Project details


Download files

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

Source Distribution

syize-1.2.17.tar.gz (121.4 kB view details)

Uploaded Source

Built Distributions

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

syize-1.2.17-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

syize-1.2.17-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

syize-1.2.17-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

syize-1.2.17-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

syize-1.2.17-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

syize-1.2.17-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file syize-1.2.17.tar.gz.

File metadata

  • Download URL: syize-1.2.17.tar.gz
  • Upload date:
  • Size: 121.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for syize-1.2.17.tar.gz
Algorithm Hash digest
SHA256 2c10523c6ca0abe3582d7bd94053ebe9fceabe21a6c2bdd5d5c01cefed93dcab
MD5 9b81334db39639e2fbbd66c88efe549b
BLAKE2b-256 65198625430b8c21a989e46f5cf11621e07eb646ee17d1df5d1977c735fa1217

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17.tar.gz:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8763554b2147e78d148ea366252c570e234a38464b42e5c538c0a556feada1d3
MD5 11a4d7635ecd440c60553359abd578c7
BLAKE2b-256 423d05fa0c5d399568c65f488d00db2374d9160466790e19aca31eb1a4a8a598

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 747f4ff23684f78f7576c27b012a7e66bef5961a50168b60e3b3907fb0ed4ab9
MD5 03d7e79844ed33d85b8e95601242f977
BLAKE2b-256 32025f16a841a7fbc8ddc713bba367542a3f5746592885946de7cb5ee2e996c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d9a39942452fc27b99bb95e803ac5d466cca28ec4cd3ded1d07c0ae2208903ec
MD5 c14e88c0eedcbcf3ad1c0697c474816c
BLAKE2b-256 bcbffabdd2f08d3a09384c8d00b1801f8d83d4df78667cdbc73d0131616e733c

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b272cba7ddb667106d0b40087f0dafc8a6af354c6679fb37b6e0d2cf004fc509
MD5 240a2509b4cb234bc90337ca92f0f08b
BLAKE2b-256 3e088cb93cf71d6d63af6f846249d146965988040f9150fb08fa3ae0a4fa408a

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3edeede8828b4efb65253c0ed616716d53bf70e9c5b7b08e0539dd3d9848ae25
MD5 afff0881feae0d3527acbf0bd13c62a9
BLAKE2b-256 5e017da8bb73c776dc9e062ee224e07d2ab403d850a7e9d692aac8abf2968581

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file syize-1.2.17-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for syize-1.2.17-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ecf71b4c378214c1a2c63592373146eba0e1a0d2d32dd650ad09919e98a996f6
MD5 10906ad3a4c98940a3c2e5a16b851cef
BLAKE2b-256 df9e9ebad1b6be4e36f2d2aea986bd1f3cdc15a457ba50ccb386bbb9980809c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for syize-1.2.17-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python-package.yaml on Syize/syize-toolkits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page