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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pytilpack-1.39.2.tar.gz
  • Upload date:
  • Size: 279.5 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.2.tar.gz
Algorithm Hash digest
SHA256 50c84a01d7e48d9ad7ec27d13b106ce3994f9f4a8197dbc77f560e39a58c363b
MD5 bafdc93d6ac7654d58f0cec4023552d4
BLAKE2b-256 ec20e616adf02328b8237a0003b3a13288d604087357a014b3bac7f2f75e1b5d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytilpack-1.39.2-py3-none-any.whl
  • Upload date:
  • Size: 103.7 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f012b9b6d8d2d080acceeaf8b52bf04cb1f02fab334748b694e1e2d991e62580
MD5 3f763447d85bad8d339c5e2778265eb0
BLAKE2b-256 bc9ede64082aa9c6fb402bab099ec6f8f2e2fd499aa0950f4398ae0d84ee419b

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