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.3.tar.gz (276.0 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.3-py3-none-any.whl (103.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pytilpack-1.39.3.tar.gz
  • Upload date:
  • Size: 276.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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.3.tar.gz
Algorithm Hash digest
SHA256 f626244516224ab0346f7e743783c018fbd263b82818e288261f18888db353df
MD5 e6f77f1ca9ef0bb2ffbdc111b6bf5230
BLAKE2b-256 fd1d4e2a5fcdb3b550508c02db6606829341927081b65f0608361726b5f794f7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytilpack-1.39.3-py3-none-any.whl
  • Upload date:
  • Size: 103.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5eedefb5dd3a77e2288cbfb24955f6b20a689fdd8ed7e04b2e83d0c94bd47eac
MD5 17fdf6f8e6f41d71889cffa81310d79b
BLAKE2b-256 002eab20131e90634c9f0bcb85e8ab003d33f4b5ef6bcbb662d3be9651bd4b58

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