アクセスログの URL エンコードされた部分を見るパイプ用スクリプトを Python で書く

March 13, 2008

decode.py を下記のように作る。

#!/usr/bin/env python
import sys, urllib
line = sys.stdin.readline()
while line:
print urllib.unquote_plus(line),
line = sys.stdin.readline()

※ urllib.unquote だと + がスペースには置換されない。

$ tail -f /var/log/httpd/access_log | ./decode.py

みたいに使う。ロケールが UTF-8 であることを前提にしてます。

tilfin freelance software engineer