<p dir="auto">I'm using Session.request to do GET from a HTTPS URL where the the server side certificate may be invalid.  For testing purposes, if the certificate is invalid, I want to retry the GET with 'verify=False'.  I'm reusing the Session for the retry, but the second request also fails even though I specify 'verify=False' in the request.  It seems that the verify state is persisted in the Session somewhere and not updated from the request parameters if already set in a previous request.  Is this the expected behavior?  It seems unusual to me.  If I create a new Session for the second request the certificate doesn't get checked in this request.</p>
<p dir="auto">Using a website that has a self-signed cert, the following use of verify=False fails:<br>
import requests<br>
s = requests.Session()<br>
r = s.get('<a href="https://selfsignedsite" rel="nofollow">https://selfsignedsite</a>')<br>
<em>traceback</em><br>
r = s.get('<a href="https://selfsidnedsite" rel="nofollow">https://selfsidnedsite</a>', verify=False)<br>
<em>traceback is the same about SSL3 not finding a valid cert</em><br>
requests.get('<a href="https://selfsignedsite" rel="nofollow">https://selfsignedsite</a>', verify=False)<br>
<em>traceback as above</em></p>