How does python urlopen use url, parameters, header and context? at the same time

problem description

how does python urlopen use url, parameters, header information and context? at the same time
the original code looks like this:

req = urllib2.Request(url, obj, headers)
opener = urllib2.urlopen(req)

now there is an error in [SSL: CERTIFICATE_VERIFY_FAILED]

so I need to use the following code to handle the error report:

import ssl
import urllib2
context = ssl._create_unverified_context()
print urllib2.urlopen("https://aa.com/", context=context).read()

could you tell me how to add this context?
tried print urllib2.urlopen (url=req, context=context). Read ()
error report:
HTTP Error 503: Service Unavailable

)

I use the following code to report the same error HTTP Error 503: Service Unavailable

import ssl
ssl._create_default_https_context = ssl._create_unverified_context

debugging information:

Internal Server Error: /deploy/key_list_import/
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response
    response = self.process_exception_by_middleware(e, request)
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "/project/soms/deploy/views.py", line 398, in salt_key_import
    minions,minions_pre = sapi.list_all_key()
  File "/project/soms/deploy/saltapi.py", line 54, in list_all_key
    self.token_id()
  File "/project/soms/deploy/saltapi.py", line 30, in token_id
    content = self.postRequest(obj,prefix="/login")
  File "/project/soms/deploy/saltapi.py", line 42, in postRequest
    opener = urllib2.urlopen(req, context=ssl._create_unverified_context())
  File "/usr/lib64/python2.7/urllib2.py", line 154, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib64/python2.7/urllib2.py", line 437, in open
    response = meth(req, response)
  File "/usr/lib64/python2.7/urllib2.py", line 550, in http_response
    "http", request, response, code, msg, hdrs)
  File "/usr/lib64/python2.7/urllib2.py", line 475, in error
    return self._call_chain(*args)
  File "/usr/lib64/python2.7/urllib2.py", line 409, in _call_chain
    result = func(*args)
  File "/usr/lib64/python2.7/urllib2.py", line 558, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 503: Service Unavailable
Apr.09,2021

503 is caused by request error, checked for problems with request

Menu