title: Proxies with Python Requests module
body: <p>I tried to use proxy with requests library</p>
  <pre><code>import requests
  
  proxies = {'https': 'http://xxx.xxx.xxx.xx:yyyy',
             'http': 'http://xx.xxx.xxx.xxx:yyyy'}
  
  r = requests.get('https://www.instagram.com', proxies=proxies)
  
  print(r.status_code)
  </code></pre>
  <p>and faced this problem:</p>
  <pre><code>requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.wikipedia.org', port=443): Max retries exceeded with url: / (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('&lt;urllib3.connection.HTTPSConnection object at 0x0000013CB6D8D610&gt;: Failed to establish a new connection: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond')))
  </code></pre>
  <p>I researched many different sites and solutions to this problem but nothing helped.
  Then I started asking questions: &quot;How does a proxy work&quot;, &quot;How to choose a proxy?&quot;.
  For my project, I need several (maybe even several dozen different proxies), so buying was not my option. (I used public proxies, correct me,
  if it is possible to buy one proxy or vpn account, so that it is not one permanent proxy adress, but many different ones)</p>
  <p>Also, in the process of searching for an answer, I was faced with a strange (in my opinion) reaction of the program to changing the source of the Internet on the computer. From router, public wi-fi and mobile internet got different error results. How is this possible?</p>