Requests (software)

Last updated
Requests
Original author(s) Kenneth Reitz
Developer(s) Cory Benfield, Ian Stapleton Cordasco, Nate Prewitt
Initial release14 February 2011 (2011-02-14)
Stable release
2.32.3 [1]   OOjs UI icon edit-ltr-progressive.svg / 29 May 2024;6 months ago (29 May 2024)
Repository github.com/psf/requests
Written in Python
License Apache License 2.0
Website requests.readthedocs.io OOjs UI icon edit-ltr-progressive.svg

Requests is an HTTP client library for the Python programming language. [2] [3]

Contents

Requests is one of the most downloaded Python libraries, [2] with over 300 million monthly downloads. [4] It maps the HTTP protocol onto Python's object-oriented semantics. Requests's design has inspired and been copied by HTTP client libraries for other programming languages. [5] [6] [7] [8] It is implemented as a wrapper for urllib3, another third-party Python HTTP library.

Kenneth Reitz, the original author, handed control over to the Python Software Foundation in 2019 [9] after being diagnosed with bipolar disorder in 2015. [10]

Features

Requests supports TLS/SSL verification, cookies, compression, SOCKS, timeouts, a variety of request methods, and custom headers. [2] [11]

Related Research Articles

IronPython is an implementation of the Python programming language targeting the .NET and Mono frameworks. The project is currently maintained by a group of volunteers at GitHub. It is free and open-source software, and can be implemented with Python Tools for Visual Studio, which is a free and open-source extension for Microsoft's Visual Studio IDE.

The following tables compare general and technical information between a number of notable IRC client programs which have been discussed in independent, reliable prior published sources.

<span class="mw-page-title-main">Metalink</span> File format that describes one or more computer files available for download

Metalink is an extensible metadata file format that describes one or more computer files available for download. It specifies files appropriate for the user's language and operating system; facilitates file verification and recovery from data corruption; and lists alternate download sources.

qBittorrent Free and open source BitTorrent client

qBittorrent is a cross-platform free and open-source BitTorrent client written in native C++. It relies on Boost, OpenSSL, zlib, Qt 6 toolkit and the libtorrent-rasterbar library, with an optional search engine written in Python.

This is a comparison of notable web frameworks, software used to build and deploy web applications.


This is a comparison of notable free and open-source configuration management software, suitable for tasks like server configuration, orchestration and infrastructure as code typically performed by a system administrator.

<span class="mw-page-title-main">Geany</span> Integrated Development Environment

Geany is a free and open-source lightweight GUI text editor using Scintilla and GTK, including basic IDE features. It is designed to have short load times, with limited dependency on separate packages or external libraries on Linux. It has been ported to a wide range of operating systems, such as BSD, Linux, macOS, Solaris and Windows. The Windows port lacks an embedded terminal window; also missing from the Windows version are the external development tools present under Unix, unless installed separately by the user. Among the supported programming languages and markup languages are C, C++, C#, Java, JavaScript, PHP, HTML, LaTeX, CSS, Python, Perl, Ruby, Pascal, Haskell, Erlang, Vala and many others.

Benevolent dictator for life (BDFL) is a title given to a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community. The phrase originated in 1995 with reference to Guido van Rossum, creator of the Python programming language.

Heroku is a cloud platform as a service (PaaS) supporting several programming languages. As one of the first cloud platforms, Heroku has been in development since June 2007, when it supported only the Ruby programming language, but now also supports Java, Node.js, Scala, Clojure, Python, PHP, and Go. For this reason, Heroku is said to be a polyglot platform as it has features for a developer to build, run and scale applications in a similar manner across most of these languages. Heroku was acquired by Salesforce in 2010 for $212 million.

CommonJS is a project to standardize the module ecosystem for JavaScript outside of web browsers.

<span class="mw-page-title-main">Flask (web framework)</span> Python web framework

Flask is a micro web framework written in Python. It is classified as a microframework because it does not require particular tools or libraries. It has no database abstraction layer, form validation, or any other components where pre-existing third-party libraries provide common functions. However, Flask supports extensions that can add application features as if they were implemented in Flask itself. Extensions exist for object-relational mappers, form validation, upload handling, various open authentication technologies and several common framework related tools.

SWORD is an interoperability standard that allows digital repositories to accept the deposit of content from multiple sources in different formats via a standardized protocol. In the same way that the HTTP protocol allows any web browser to talk to any web server, so SWORD allows clients to talk to repository servers. SWORD is a profile (specialism) of the Atom Publishing Protocol, but restricts itself solely to the scope of depositing resources into scholarly systems.

Augeas is a free software configuration-management library, written in the C programming language. It is licensed under the terms of the GNU Lesser General Public License.

<span class="mw-page-title-main">Celery (software)</span> Distributed task queue

Celery is an open source asynchronous task queue or job queue which is based on distributed message passing. While it supports scheduling, its focus is on operations in real time.

<span class="mw-page-title-main">Julia (programming language)</span> Dynamic programming language

Julia is a high-level, general-purpose dynamic programming language, still designed to be fast and productive, for e.g. data science, artificial intelligence, machine learning, modeling and simulation, most commonly used for numerical analysis and computational science.

<span class="mw-page-title-main">Phalcon (framework)</span> PHP open-source web framework

Phalcon is a PHP web framework based on the model–view–controller (MVC) pattern. Originally released in 2012, it is an open-source framework licensed under the terms of the BSD License.

<span class="mw-page-title-main">Nim (programming language)</span> Programming language

Nim is a general-purpose, multi-paradigm, statically typed, compiled high-level system programming language, designed and developed by a team around Andreas Rumpf. Nim is designed to be "efficient, expressive, and elegant", supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.

<span class="mw-page-title-main">KDE Gear</span> Set of applications and supporting libraries

The KDE Gear is a set of applications and supporting libraries that are developed by the KDE community, primarily used on Linux-based operating systems but mostly multiplatform, and released on a common release schedule.

FastAPI is a high-performance web framework for building HTTP-based service APIs in Python 3.8+. It uses Pydantic and type hints to validate, serialize and deserialize data. FastAPI also automatically generates OpenAPI documentation for APIs built with it. It was first released in 2018.

References

  1. "Release 2.32.3". 29 May 2024. Retrieved 24 June 2024.
  2. 1 2 3 Project homepage
  3. Beazly, David (April 2012). "R is for replacement" (PDF). Login. 37 (2). Retrieved 16 May 2020.
  4. "requests download stats". PePy. Retrieved 2023-11-08.
  5. "Requests for PHP | Requests for PHP". requests.ryanmccue.info. Retrieved 2023-06-07.
  6. "Tools for Working with URLs and HTTP". httr.r-lib.org. Retrieved 2023-06-07.
  7. Duan, Daniel (2023-06-03), Just , retrieved 2023-06-07
  8. httprb/http, http.rb, 2023-06-06, retrieved 2023-06-07
  9. "Project maintenance · Issue #5149 · psf/requests". GitHub. Retrieved 2023-06-07.
  10. "MentalHealthError: an exception occurred". Kenneth Reitz. Retrieved 2023-06-07.
  11. Python, Real. "Python's Requests Library (Guide) – Real Python". realpython.com. Retrieved 2023-11-08.