All Projects → requests → Toolbelt

requests / Toolbelt

Licence: other
A toolbelt of useful classes and functions to be used with python-requests

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Toolbelt

plenopticam
Light-field imaging application for plenoptic cameras
Stars: ✭ 111 (-85.16%)
Mutual labels:  toolbox
Tide
A General Toolbox for Identifying Object Detection Errors
Stars: ✭ 309 (-58.69%)
Mutual labels:  toolbox
Alipy
ALiPy: Active Learning in Python is an active learning python toolbox, which allows users to conveniently evaluate, compare and analyze the performance of active learning methods.
Stars: ✭ 558 (-25.4%)
Mutual labels:  toolbox
Visualplus
🎨 The VisualPlus Framework (VPF) for WinForms allows you to rapidly deploy professional .NET applications with customizable components and controls.
Stars: ✭ 268 (-64.17%)
Mutual labels:  toolbox
Fairml
Stars: ✭ 298 (-60.16%)
Mutual labels:  toolbox
Boxx
Tool-box for efficient build and debug in Python. Especially for Scientific Computing and Computer Vision.
Stars: ✭ 429 (-42.65%)
Mutual labels:  toolbox
spire
🗼Extensible JavaScript toolbox management
Stars: ✭ 21 (-97.19%)
Mutual labels:  toolbox
Learnpython
以撸代码的形式学习Python
Stars: ✭ 6,040 (+707.49%)
Mutual labels:  python-requests
Graffiti
Minimalistic GraphQL framework
Stars: ✭ 306 (-59.09%)
Mutual labels:  toolbox
Baby Names Analysis
Data ETL & Analysis on the dataset 'Baby Names from Social Security Card Applications - National Data'.
Stars: ✭ 557 (-25.53%)
Mutual labels:  python-requests
Arknights Toolbox
🔨 Arknights Toolbox, all servers are supported. 明日方舟工具箱,支持中台美日韩服
Stars: ✭ 271 (-63.77%)
Mutual labels:  toolbox
Torch Toolbox
[Active development]ToolBox to make using Pytorch much easier.Give it a star if you feel helpful.
Stars: ✭ 268 (-64.17%)
Mutual labels:  toolbox
Causaldiscoverytoolbox
Package for causal inference in graphs and in the pairwise settings. Tools for graph structure recovery and dependencies are included.
Stars: ✭ 447 (-40.24%)
Mutual labels:  toolbox
Neurokit
NeuroKit2: The Python Toolbox for Neurophysiological Signal Processing
Stars: ✭ 264 (-64.71%)
Mutual labels:  toolbox
Faster Than Requests
Faster requests on Python 3
Stars: ✭ 639 (-14.57%)
Mutual labels:  python-requests
go-tools
A utility tool library of Golang.
Stars: ✭ 44 (-94.12%)
Mutual labels:  toolbox
Proxy requests
a class that uses scraped proxies to make http GET/POST requests (Python requests)
Stars: ✭ 357 (-52.27%)
Mutual labels:  python-requests
Kair
Image Restoration Toolbox (PyTorch). Training and testing codes for USRNet, DnCNN, FFDNet, SRMD, DPSR, ESRGAN
Stars: ✭ 677 (-9.49%)
Mutual labels:  toolbox
Jok3r
Jok3r v3 BETA 2 - Network and Web Pentest Automation Framework
Stars: ✭ 645 (-13.77%)
Mutual labels:  toolbox
Insta Mass Account Creator
Instagram Auto Account Creation Bot
Stars: ✭ 452 (-39.57%)
Mutual labels:  python-requests

The Requests Toolbelt

This is just a collection of utilities for python-requests_, but don't really belong in requests proper. The minimum tested requests version is 2.1.0. In reality, the toolbelt should work with 2.0.1 as well, but some idiosyncracies prevent effective or sane testing on that version.

pip install requests-toolbelt to get started!

multipart/form-data Encoder

The main attraction is a streaming multipart form-data object, MultipartEncoder. Its API looks like this:

.. code-block:: python

from requests_toolbelt import MultipartEncoder
import requests

m = MultipartEncoder(
    fields={'field0': 'value', 'field1': 'value',
            'field2': ('filename', open('file.py', 'rb'), 'text/plain')}
    )

r = requests.post('http://httpbin.org/post', data=m,
                  headers={'Content-Type': m.content_type})

You can also use multipart/form-data encoding for requests that don't require files:

.. code-block:: python

from requests_toolbelt import MultipartEncoder
import requests

m = MultipartEncoder(fields={'field0': 'value', 'field1': 'value'})

r = requests.post('http://httpbin.org/post', data=m,
                  headers={'Content-Type': m.content_type})

Or, you can just create the string and examine the data:

.. code-block:: python

# Assuming `m` is one of the above
m.to_string()  # Always returns unicode

User-Agent constructor

You can easily construct a requests-style User-Agent string::

from requests_toolbelt import user_agent

headers = {
    'User-Agent': user_agent('my_package', '0.0.1')
    }

r = requests.get('https://api.github.com/users', headers=headers)

SSLAdapter

The SSLAdapter was originally published on Cory Benfield's blog_. This adapter allows the user to choose one of the SSL protocols made available in Python's ssl module for outgoing HTTPS connections:

.. code-block:: python

from requests_toolbelt import SSLAdapter
import requests
import ssl

s = requests.Session()
s.mount('https://', SSLAdapter(ssl.PROTOCOL_TLSv1))

cookies/ForgetfulCookieJar

The ForgetfulCookieJar prevents a particular requests session from storing cookies:

.. code-block:: python

from requests_toolbelt.cookies.forgetful import ForgetfulCookieJar

session = requests.Session()
session.cookies = ForgetfulCookieJar()

Contributing

Please read the suggested workflow <https://toolbelt.readthedocs.io/en/latest/contributing.html>_ for contributing to this project.

Please report any bugs on the issue tracker_

.. _Cory Benfield's blog: https://lukasa.co.uk/2013/01/Choosing_SSL_Version_In_Requests/ .. _python-requests: https://github.com/kennethreitz/requests .. _issue tracker: https://github.com/requests/toolbelt/issues

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].