Python HTTP Client

Open-source Python projects categorized as HTTP Client | Edit details

Top 13 Python HTTP Client Projects

  • GitHub repo httpie

    As easy as /aitch-tee-tee-pie/ 🥧 Modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more.

    Project mention: Look at my new plugin to help run long commands | | 2021-10-07

    Because this doesn't need to be sourced every time and, during development, like I am doing right now, it is constantly being changed. Add more, change existing etc. Imagine doing a web dev project and you are constantly creating and editing requests on postman. But you want to use a command line tool instead, such as With this tool, it is easier to create those requests and run them on the command line. I'm willing to discuss this more with you. I believe this can be useful for many people and am having trouble marketing it haha.

  • GitHub repo requests

    A simple, yet elegant, HTTP library.

    Project mention: What are the differences between the urllib, urllib2, urllib3 and requests module? | | 2021-10-15

    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...


    Optimize your datasets for ML. Goodbye, boilerplate code - the fastest dataset optimization and management tool for computer vision.

  • GitHub repo AIOHTTP

    Asynchronous HTTP client/server framework for asyncio and Python

    Project mention: Help wth Asyncio/aiohttp on Windows | | 2021-10-06

    Try the other comments, if nothing works, you can maybe submit a bug to aiohttp repo. I feel like they may be better prepared to deal with this than us. The example you gave is great BTW

  • GitHub repo HTTP Prompt

    An interactive command-line HTTP and API testing client built on top of HTTPie featuring autocomplete, syntax highlighting, and more.

    Project mention: HTTP-Prompt, httpie turned into a shell | | 2021-07-10
  • GitHub repo httpx

    A next generation HTTP client for Python. 🦋

    Project mention: Httpx – fully featured HTTP client for Python3, with sync and async APIs | | 2021-09-14
  • GitHub repo grequests

    Requests + Gevent = <3

    Project mention: Best way to run parallel async http requests | | 2021-08-23

    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).

  • GitHub repo urllib3

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

    Project mention: HTTP Calls in Python Without requests or Other External Dependencies | | 2021-03-07

    urllib3 is the dependency for many other tools, including requests. By itself, urllib3 is quite usable. It may be all you need.

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo Grab

    Web Scraping Framework

  • GitHub repo nba_api

    An API Client package to access the APIs for

    Project mention: Rotate through multiple sites with scraper | | 2021-09-10

    ''' pip3 install nba-api Started off here: A nea little example ''' import pandas as pd from nba_api.stats.static import players from nba_api.stats.library.parameters import SeasonAll from nba_api.stats.endpoints import playergamelog, playercareerstats from time import sleep pd.set_option('display.max_columns', None) pd.set_option('display.max_rows', None) pd.set_option('display.max_colwidth', None) # Get players players_all = players.get_players() player_ids = sorted(player['id'] for player in players_all) sleep(.1) # Avoid rate limit # Lebron example lebron_games = playergamelog.PlayerGameLog(player_id='2544', season = SeasonAll.all) df_lebron = lebron_games.get_data_frames()[0] df_lebron.to_csv('lebron.tsv', sep='\t', index = None, header=True, encoding='utf-8')

  • GitHub repo 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.

    Project mention: Faster python app | | 2021-05-01

    That’s a terrible way to cache a http request. It completely ignores any cache information that the server sends and just blindly stores the result. If you want http caching httplib2 will do it properly.

  • GitHub repo roast.vim

    An HTTP client for Vim, that can also be used as a REST client.

    Project mention: Show HN: Prestige, a text based HTTP client, for working with HTTP APIs | | 2021-06-06

    Ah! Yes, thanks for sharing. I should've guessed this existed for Emacs as well. I played around with implementing a similar concept like this in Vim, in 2019 (link: Unfortunately, while I love Vim as an editor, I couldn't do a lot of features that I wanted. So I moved to the browser and built Prestige :)

  • GitHub repo domhttpx

    domhttpx is a google search engine dorker with HTTP toolkit built with python, can make it easier for you to find many URLs/IPs at once with fast time.

    Project mention: About me | #FirstPost | | 2021-08-28

    domhttpx - google search engine dorker with HTTP toolkit built with python, can make it easier for you to find many URLs/IPs at once with fast time.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-10-15.


What are some of the best open-source HTTP Client projects in Python? This list will help you:

Project Stars
1 httpie 52,441
2 requests 46,222
3 AIOHTTP 11,744
4 HTTP Prompt 8,293
5 httpx 7,770
6 grequests 3,882
7 urllib3 2,793
8 Grab 2,132
9 nba_api 990
10 Uplink 862
11 httplib2 419
12 roast.vim 79
13 domhttpx 54
Find remote jobs at our new job board There are 36 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Scout APM: A developer's best friend. Try free for 14-days
Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.