ARCHIVESDRIVE HB

オイラはホームベーカリー!

scan_bucket.py で UnicodeEncodeError が出た時に

bucket-antivirus-function 導入しててめっちゃ苦労したので、後ほど現状の AWS にインストールする方法を書く。

UnicodeEncodeError: 'ascii' codec can't encode characters in position 38-46: ordinal not in range(128)

characters in 以降は環境によって変わります。

python文字コードの扱い複雑すぎひん?! という気持ちに。 チョッと調べてやれば大丈夫やろ、と思ったら解消しなかったので、以下のようにして標準出力を抑制して回避しました。

github.com

# 66 行目

-    print("Scanning: {}/{}".format(s3_bucket_name, key_name))
+    print("Scanning")

ファイルとかにリダイレクトするか内部で出力するようにすれば解決すんのかな、と思ったけどとりあえず動作優先だったので手動で修正。 これに限らず、放置されているようでここ数ヶ月で発生した問題が fork 先でしか取り込まれてないので、ワイも改造に乗り出すか、という気持ちにさせられた。