title: how to use gevent not to exceed http connection pool?
body: <p>I want to call function to crawl data on the web using HTTP requests but it is too slow to call each function sequentially so that I found out about gevent library in python to make the logic run parallelly. But the source code is like the following. if content is big, I got error like the following. How can I set for the gevent to call my functions within the limited resource?  </p>
  
  <pre><code>    monkey.patch_all()
      threads = [gevent.spawn(yahoo.download_csv, tkr) for tkr in content]
      gevent.joinall(threads)
  </code></pre>
  
  <p>The error is..</p>
  
  <pre><code>    File "D:\dev\Python36-64\lib\ssl.py", line 465, in options
        super(SSLContext, SSLContext).options.__set__(self, value)
      [Previous line repeated 318 more times]
    RecursionError: maximum recursion depth exceeded while calling a Python object
  </code></pre>
  
  <p>The yahoo.download_csv is the function to crawl data using http requests and return the crawled data based on the ticker.</p>