iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 22
0

Certificate的驗證設定在PoolManager,使用cert_reqsca_certs參數,且urllib3也推薦了certifi package當作來源(Mozilla’s root certificate)

import certifi
import urllib3
http = urllib3.PoolManager(cert_reqs='CERT_REQUIRED', ca_certs=certifi.where())

Timeout的部分可以使用float或是Timeout物件,使用timeout參數,可以設定在PoolManager或是request()
使用Timeout物件可以分別指定connect和read timeout

Retry的部分可以使用integer, False或是Retry物件,使用retries參數,可以設定在PoolManager或是request()

urllib3.exceptions的列表

  • HTTPError
    • PoolError
      • RequestError
        • HostChangedError
        • MaxRetryError
      • ClosedPoolError
      • EmptyPoolError
    • ResponseError
    • ProtocolError = ConnectionError
      • ResponseNotChunked
    • SSLError
    • ProxyError
    • InvalidHeader
    • HeaderParsingError
    • BodyNotHttplibCompatible
    • LocationValueError
      • LocationParseError
    • DecodeError
    • IncompleteRead
    • TimeoutError
      • ConnectTimeoutError
      • ReadTimeoutError
    • TimeoutStateError
    • UnrewindableBodyError
  • HTTPWarning
    • DependencyWarning
    • SNIMissingWarning
    • SecurityWarning
      • SubjectAltNameWarning
      • SystemTimeWarning
      • InsecurePlatformWarning
      • InsecureRequestWarning

改變urllib3的log level

logging.getLogger("urllib3").setLevel(logging.WARNING)

參考


上一篇
Day21-urllib3-User Guide-2
下一篇
Day23-urllib3-Advanced Usage-1
系列文
Why it works: python requests and urllib330
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言