Python boto3 で InsecureRequestWarning を消す方法2つ
方法1: 環境変数を使う
PYTHONWARNINGS
環境変数に "ignore:Unverified HTTPS request"
を書いておく。
以下は Windows の例。"
があると動かないので注意。
$ set PYTHONWARNINGS=ignore:Unverified HTTPS request $ python script_with_boto3.py
方法2: urllib3.disable_warnings() を使う
urllib3.disable_warnings()
を使えば良いことは知っていたが、消えてくれない。なぜだと思ったら、
import botocore.vendored.requests.packages.urllib3 as urllib3 urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) # 上記コードは boto3 を import する前に実行する必要アリ !! import boto3
これで解決。 「Boto3にバンドルされてるrequests」にバンドルされてる urllib3 に対して disable_warnings() してやる必要があった。
が、これはトリッキーだし、OS によっては使えないらしいので、方法1 が確実だと思う。
参考
suppressing warnings for unverified certificates? · Issue #699 · boto/boto3