Python.request visit /token return (SSLError("bad handshake: SysCallError(104, 'ECONNRESET')",),))

I am using python request to visit the /token to request ID_Token on my ubuntu VM.
url is https://.okta.com/oauth2/default/v1/token

but it return:
2020-02-24 05:37:11.614 INFO [] Authentication failed: HTTPSConnectionPool(host=‘my domain’, port=443): Max retries exceeded with url: /oauth2/default/v1/token (Caused by SSLError(SSLError(“bad handshake: SysCallError(104, ‘ECONNRESET’)”,),))

But on the same VM, I can use CURL to get the token from /token API.
curl -v -X POST -H “Content-type:application/x-www-form-urlencoded” “https://.okta.com/oauth2/default/v1/token” -d “client_id=<client_id>&client_secret=<client_secret>&grant_type=authorization_code&redirect_uri=https:///complete/openidconnect/&code=

is there any special setting for python request library ?

Have you taken a look at this SO post: https://stackoverflow.com/questions/10667960/python-requests-throwing-sslerror

I tried the

verify=False

but not work