私はPython2.6でスクリプトを書いています。pyVmomiいずれかの接続方法を使用している場合:
service_instance = connect.SmartConnect(host=args.ip,
user=args.user,
pwd=args.password)
次の警告が表示されます:
/usr/lib/python2.6/site-packages/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html
InsecureRequestWarning)
興味深いのは、pip で urllib3 がインストールされていないことです (ただし、/usr/lib/python2.6/site-packages/requests/packages/urllib3/にあります)。
提案通りに試してみましたここ
import urllib3
...
urllib3.disable_warnings()
しかし、何も変わりませんでした。
ベストアンサー1
環境変数を介して Python の警告を無効にすることができますPYTHONWARNINGS
。この場合、次のようになります。
export PYTHONWARNINGS="ignore:Unverified HTTPS request"
Python コード ( requests >= 2.16.0
) を使用して無効にするには:
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
についてはrequests < 2.16.0
、以下の元の回答を参照してください。
元の回答
これがうまくいかなかった理由urllib3.disable_warnings()
は、リクエスト内でベンダー化された urllib3 の別のインスタンスを使用しているように見えるからです。
私はここのパスに基づいてこれを収集します:/usr/lib/python2.6/site-packages/requests/packages/urllib3/connectionpool.py
リクエストのベンダー化された urllib3 の警告を無効にするには、モジュールの特定のインスタンスをインポートする必要があります。
import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)