requests VS grequests

Compare requests vs grequests and see what are their differences.

Our great sponsors
  • Activeloop.ai - Optimize your datasets for ML
  • Scout APM - A developer's best friend. Try free for 14-days
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
requests grequests
29 4
46,222 3,882
0.8% -
7.5 1.5
15 days ago 22 days ago
Python Python
Apache License 2.0 BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

requests

Posts with mentions or reviews of requests. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-29.
  • ImportError: No module named requests
    Whenever I try to import requests, I get an error saying No module Named requests.
  • What are the differences between the urllib, urllib2, urllib3 and requests module?
    In Python, what are the differences between the urllib, urllib2, urllib3 and requests modules? Why are there three? They seem to do the same thing...
  • Where can I read quality Python code
    Keep in mind that there's a lot of clutter in Requests' repository. The entire module is actually just these files.
    Starting with an incredibly complex project like a machine learning platform probably isn't a good idea. Try finding something easier. Maybe something like requests.
  • Why is the PSF ignoring its own CoC?
    reddit.com/r/Python | 2021-09-02
    https://github.com/psf/requests/pull/5923 adds back a logo that people find offensive because someone got it tattooed on their body? Doesn't the logo violate the Code of Conduct?
  • 3 Ways to Unit Test REST APIs in Python
    dev.to | 2021-07-22
    To retrieve the weather data, we'll use requests. We can create a function that receives a city name as parameter and returns a json. The json will contain the temperature, weather description, sunset, sunrise time and so on.
  • reader 2.0 released – a Python feed reader library
    reddit.com/r/Python | 2021-07-19
    want to change the way feeds are retrieved by using Requests?
  • How To Write Clean Code in Python
    dev.to | 2021-07-14
    Explore other well-written code bases. If you want some examples of well-written, clean, and Pythonic code, check out the Python requests library.
  • Everything to know about Requests v2.26.0
    dev.to | 2021-07-13
    Requests v2.26.0 is a large release which changes and removes many features and dependencies that you should know about when upgrading.
  • Multiple payloads with one POST request?
    Are you talking about multipart/mixed or some other form of multipart type? If so, look here: https://github.com/psf/requests/issues/1736 the parameter to pass is very confusingly named files. But, it seems to be going in the direction you want.

grequests

Posts with mentions or reviews of grequests. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-08-23.
  • Best way to run parallel async http requests
    I found examples of running parallel async http requests using grequests, but in its GitHub page it recommends using requests-threads or requests-futures instead. Which of them would be the most straightforward tool for optimizing a sequence of GET requests against an API. Case scenario: API endpoint provides paginated responses. With first response, I get the total of itens, which allow me to prepare all the remaining urls. The API allows for 25 simultaneous requests from a single user session (JWT token).
  • Scraping info from multiple links (from inside each link) that are listed on a webpage?
    I'd use an asynchronous programming package like grequests or Scrapy. Basically, store all the links you want to visit in a list then prepare them, send the requests, and then iterate over the content of the response. If the website needs JavaScript to then you can use requests-html with AsyncHTMLSession to render the JavaScript. ``` import grequests
  • FastAPI on a VPS - what will be the bottleneck
    reddit.com/r/FastAPI | 2021-01-13
    This video demonstrates Hosting FastAPI on Azure VM with Ubuntu. There are many factors to take into consideration on RAM and bandwidth. But to help you analyze the performance of your deployment, you can use grequests.
  • Celery vs Threads
    reddit.com/r/django | 2021-01-12
    If you're doing something in a view that is i/o bound, doesn't take very long, and you need to do a lot of it in parallel (eg. hit 10 different API endpoints in parallel) then you might use threads, or something like this to speed up your view. You can also use an offine task framework like Celery in these cases as well.

What are some alternatives?

When comparing requests and grequests you can also consider the following projects:

urllib3 - Python HTTP library with thread-safe connection pooling, file post support, user friendly, and more.

httplib2 - Small, fast HTTP client library for Python. Features persistent connections, cache, and Google App Engine support. Originally written by Joe Gregorio, now supported by community.

requests-futures - Asynchronous Python HTTP Requests for Humans using Futures

treq - Python requests like API built on top of Twisted's HTTP client.

Uplink - A Declarative HTTP Client for Python

Tapioca-Wrapper - Python API client generator

txrequests - Asynchronous Python HTTP Requests for Humans using twisted

AnyAPI - AnyAPI is a library that helps you to write any API wrapper with ease and in pythonic way.

AIOHTTP - Asynchronous HTTP client/server framework for asyncio and Python

jasmin - Jasmin - Open source SMS gateway