Skip to content

Python

asdf 環境の Python に pip で追加したコマンドが使えない場合の対処

asdf で Python をインストールした環境で pip を使い、CLI から実行可能なコマンドをインストールしたにも関わらず、「コマンドが使えない」という事象が発生します。 下記では例として cmlutils をインストールしていますが、インストール後に cml コマンドへのパスが通っておらず、利用出来ません。

1
2
3
4
# python3 -m pip install cmlutils
(snip)
# which cml
#

この問題は reshim を実行することで解決します。

1
asdf reshim python

これで pip でインストールしたコマンドが利用可能になりました。

1
2
# which cml
/root/.asdf/shims/cml

全ての Docker コンテナを停止・削除する Python スクリプト

以前に 全コンテナを停止・削除する docker サブコマンド「docker purge」 というメモを書きました。 このメモでは Docker のプラグインとして golang で purge というコマンドを作成しました。 Python から Docker を扱うのも簡単なので、今回は Python で同じ目的のスクリプトを書いてみました。

pyOpenSSL で SSL/TLS サーバ証明書の有効期限を取得する

以前に 証明書の有効期限を確認する Python スクリプト というメモを書きました。 このメモでは pyOpenSSL を利用していました。 他にも Python から SSL/TLS サーバ証明書を取り扱いたい場合、以下のようなライブラリを利用出来るようです。

名称 最新バージョン リリース日
certifier 0.2.1 2019/06/28
pyOpenSSL 23.3.0 2023/10/26
ssl-certinfo 1.1.2 2022/07/03

pyOpenSSL 以外はあまりメンテナンスされていないようです。 以前のメモでは機能をメソッドとして実装していたのですが、クラス/プロパティとして実装した方が扱いやすかったので改造したサンプルスクリプトをメモしておきます。

Flet で GUI な Python アプリケーションを作成する

Python で GUI アプリケーションを作成する場合、以下のようなライブラリから何れかを選択するケースが多いと思います。

上記以外にも Flet を使うことも可能です。 Flet を利用する場合、GUI アプリケーションとして動作させることが可能ですが、Web アプリケーションとして動作させることも可能です。 今回は Flet 公式サイトに掲載されているサンプルアプリケーションを動作させるところまで試してみます。

2to3 で Python2 コードを Python3 コードへ変換する

2to3 を使うと Python2 ベースのコードを Python3 へ変換することが出来ます。 とは言え、2to3 も万能なわけではありませんので、2to3 が修正してくれなかった部分は手動で修正していく必要があります。 2to3 は pip でインストールすることが出来ます。

1
python3 -m pip install 2to3

DockerHub へイメージを登録する

DockerHub にイメージをアップロードするには GitHub と連携させるのが簡単です。 ですが、Changes to Docker Hub Autobuilds で下記のように書かれている通り、2021 年 6 月 18 日から DockerHub の無料アカウントでは GitHub 連携が出来なくなっています。

As many of you are aware, it has been a difficult period for companies offering free cloud compute [1]. Unfortunately, Docker’s Autobuild service has been targeted by the same bad actors, so today we are disappointed to announce that we will be discontinuing Autobuilds on the free tier starting from June 18, 2021.