Skip to main content

Python Utility Pack

Project description

pytilpack

Code style: black Lint&Test PyPI version

Pythonのユーティリティ集。

インストール

pip install pytilpack
# pip install pytilpack[all]
# pip install pytilpack[fastapi]
# pip install pytilpack[flask]
# pip install pytilpack[markdown]
# pip install pytilpack[openai]
# pip install pytilpack[pyyaml]
# pip install pytilpack[quart]
# pip install pytilpack[sqlalchemy]
# pip install pytilpack[tiktoken]
# pip install pytilpack[tqdm]

使い方

import

各モジュールを個別にimportして利用する。

import pytilpack.xxx

xxxのところは対象ライブラリと同名になっている。openaiとかpathlibとか。 それぞれのモジュールに関連するユーティリティ関数などが入っている。

特定のライブラリに依存しないものもある。

モジュール一覧

各種ライブラリ用のユーティリティのモジュール一覧

特定のライブラリに依存しないモジュール一覧

CLIコマンド

一部の機能はCLIコマンドとしても利用可能。

空のディレクトリを削除

pytilpack delete_empty_dirs path/to/dir [--no-keep-root] [--verbose]
  • 空のディレクトリを削除
  • デフォルトでルートディレクトリを保持(--no-keep-rootで削除可能)

古いファイルを削除

pytilpack delete_old_files path/to/dir --days=7 [--no-delete-empty-dirs] [--no-keep-root-empty-dir] [--verbose]
  • 指定した日数より古いファイルを削除(--daysオプションで指定)
  • デフォルトで空ディレクトリを削除(--no-delete-empty-dirsで無効化)
  • デフォルトでルートディレクトリを保持(--no-keep-root-empty-dirで削除可能)

ディレクトリを同期

pytilpack sync src dst [--delete] [--verbose]
  • コピー元(src)からコピー先(dst)へファイル・ディレクトリを同期
  • 日付が異なるファイルをコピー
  • --deleteオプションでコピー元に存在しないコピー先のファイル・ディレクトリを削除

URLの内容を取得

pytilpack fetch url [--no-verify] [--verbose]
  • URLからHTMLを取得し、簡略化して標準出力に出力
  • --no-verifyオプションでSSL証明書の検証を無効化
  • --verboseオプションで詳細なログを出力

MCPサーバーを起動

pytilpack mcp [--transport=stdio] [--host=localhost] [--port=8000] [--verbose]
  • Model Context ProtocolサーバーとしてpytilpackのFetch機能を提供
  • --transportオプションで通信方式を指定(stdio/http、デフォルト: stdio)
  • --hostオプションでサーバーのホスト名を指定(httpの場合のみ使用、デフォルト: localhost)
  • --portオプションでサーバーのポート番号を指定(httpの場合のみ使用、デフォルト: 8000)
  • --verboseオプションで詳細なログを出力

stdioモード

pytilpack mcp
# または
pytilpack mcp --transport=stdio

httpモード

pytilpack mcp --transport=http --port=8000

DB接続待機

pytilpack wait-for-db-connection SQLALCHEMY_DATABASE_URI [--timeout=180] [--verbose]
  • 指定されたSQLALCHEMY_DATABASE_URIでDBに接続可能になるまで待機
  • URLに非同期ドライバ(+asyncpg, +aiosqlite, +aiomysql等)が含まれる場合は自動で非同期処理を使用
  • --timeoutオプションでタイムアウト秒数を指定(デフォルト: 180)
  • --verboseオプションで詳細なログを出力

開発手順

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pytilpack-1.39.1.tar.gz (279.4 kB view details)

Uploaded Source

Built Distribution

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

pytilpack-1.39.1-py3-none-any.whl (103.6 kB view details)

Uploaded Python 3

File details

Details for the file pytilpack-1.39.1.tar.gz.

File metadata

  • Download URL: pytilpack-1.39.1.tar.gz
  • Upload date:
  • Size: 279.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pytilpack-1.39.1.tar.gz
Algorithm Hash digest
SHA256 c9de65fcc7b00203b953766a60be6a0972a6d3eb04acd221a26c2c24f10672d3
MD5 b6b839d5550aebbc5d2ed12cbdc3f0ab
BLAKE2b-256 f0ff82adf532e1d1394b9fa2bbe5d59f4e55aa7a98e021f253ad4623a4b67c3b

See more details on using hashes here.

File details

Details for the file pytilpack-1.39.1-py3-none-any.whl.

File metadata

  • Download URL: pytilpack-1.39.1-py3-none-any.whl
  • Upload date:
  • Size: 103.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pytilpack-1.39.1-py3-none-any.whl
Algorithm Hash digest
SHA256 37b168a55c922bb47b7a9c15a1e7d03859c0ec0d7b0885a66861b5e09a415203
MD5 cc4a7a5bfdd2279aa58006a4009af2b8
BLAKE2b-256 14484ab5082df3bab12bea6fe30344de47f05aa8ccfcc0cfcc83060269dc42e6

See more details on using hashes here.

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