All Projects → aio-libs → Multidict

aio-libs / Multidict

Licence: apache-2.0
The multidict implementation

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Multidict

Shcheck
A basic tool to check security headers of a website
Stars: ✭ 160 (-28.89%)
Mutual labels:  headers
Aiohttp Jinja2
jinja2 template renderer for aiohttp.web
Stars: ✭ 180 (-20%)
Mutual labels:  aiohttp
Aiohttp Devtools
dev tools for aiohttp
Stars: ✭ 202 (-10.22%)
Mutual labels:  aiohttp
Aiohttp Session
Web sessions for aiohttp.web
Stars: ✭ 171 (-24%)
Mutual labels:  aiohttp
Aiohttp Cors
CORS support for aiohttp
Stars: ✭ 173 (-23.11%)
Mutual labels:  aiohttp
Bolt Python
A framework to build Slack apps using Python
Stars: ✭ 190 (-15.56%)
Mutual labels:  aiohttp
Next Secure Headers
Sets secure response headers for Next.js.
Stars: ✭ 156 (-30.67%)
Mutual labels:  headers
Python Mocket
a socket mock framework - for all kinds of socket animals, web-clients included
Stars: ✭ 209 (-7.11%)
Mutual labels:  aiohttp
Owllook
owllook-小说搜索引擎
Stars: ✭ 2,163 (+861.33%)
Mutual labels:  aiohttp
Ok ip proxy pool
🍿爬虫代理IP池(proxy pool) python🍟一个还ok的IP代理池
Stars: ✭ 196 (-12.89%)
Mutual labels:  aiohttp
Linkedin Learning Downloader
Linkedin Learning videos downloader
Stars: ✭ 171 (-24%)
Mutual labels:  aiohttp
Aiohttp Swagger
Swagger API Documentation builder for aiohttp server
Stars: ✭ 172 (-23.56%)
Mutual labels:  aiohttp
Fooproxy
稳健高效的评分制-针对性- IP代理池 + API服务,可以自己插入采集器进行代理IP的爬取,针对你的爬虫的一个或多个目标网站分别生成有效的IP代理数据库,支持MongoDB 4.0 使用 Python3.7(Scored IP proxy pool ,customise proxy data crawler can be added anytime)
Stars: ✭ 195 (-13.33%)
Mutual labels:  aiohttp
Gain
Web crawling framework based on asyncio.
Stars: ✭ 2,002 (+789.78%)
Mutual labels:  aiohttp
Aiohttp admin
admin interface for aiohttp application http://aiohttp-admin.readthedocs.io
Stars: ✭ 207 (-8%)
Mutual labels:  aiohttp
Aiozipkin
Distributed tracing instrumentation for asyncio with zipkin
Stars: ✭ 161 (-28.44%)
Mutual labels:  aiohttp
Aiohttp Debugtoolbar
aiohttp_debugtoolbar is library for debugtoolbar support for aiohttp
Stars: ✭ 183 (-18.67%)
Mutual labels:  aiohttp
Arsenic
Async WebDriver implementation for asyncio and asyncio-compatible frameworks
Stars: ✭ 209 (-7.11%)
Mutual labels:  aiohttp
Create Aio App
The boilerplate for aiohttp. Quick setup for your asynchronous web service.
Stars: ✭ 207 (-8%)
Mutual labels:  aiohttp
Aiohttp Security
auth and permissions for aiohttp
Stars: ✭ 195 (-13.33%)
Mutual labels:  aiohttp

========= multidict

.. image:: https://github.com/aio-libs/multidict/workflows/CI/badge.svg :target: https://github.com/aio-libs/multidict/actions?query=workflow%3ACI :alt: GitHub status for master branch

.. image:: https://codecov.io/gh/aio-libs/multidict/branch/master/graph/badge.svg :target: https://codecov.io/gh/aio-libs/multidict :alt: Coverage metrics

.. image:: https://img.shields.io/pypi/v/multidict.svg :target: https://pypi.org/project/multidict :alt: PyPI

.. image:: https://readthedocs.org/projects/multidict/badge/?version=latest :target: http://multidict.readthedocs.org/en/latest/?badge=latest :alt: Documentationb

.. image:: https://img.shields.io/pypi/pyversions/multidict.svg :target: https://pypi.org/project/multidict :alt: Python versions

.. image:: https://badges.gitter.im/Join%20Chat.svg :target: https://gitter.im/aio-libs/Lobby :alt: Chat on Gitter

Multidict is dict-like collection of key-value pairs where key might be occurred more than once in the container.

Introduction

HTTP Headers and URL query string require specific data structure: multidict. It behaves mostly like a regular dict but it may have several values for the same key and preserves insertion ordering.

The key is str (or istr for case-insensitive dictionaries).

multidict has four multidict classes: MultiDict, MultiDictProxy, CIMultiDict and CIMultiDictProxy.

Immutable proxies (MultiDictProxy and CIMultiDictProxy) provide a dynamic view for the proxied multidict, the view reflects underlying collection changes. They implement the collections.abc.Mapping interface.

Regular mutable (MultiDict and CIMultiDict) classes implement collections.abc.MutableMapping and allows to change their own content.

Case insensitive (CIMultiDict and CIMultiDictProxy) ones assume the keys are case insensitive, e.g.::

dct = CIMultiDict(key='val') 'Key' in dct True dct['Key'] 'val'

Keys should be str or istr instances.

The library has optional C Extensions for sake of speed.

License

Apache 2

Library Installation

.. code-block:: bash

$ pip install multidict

The library is Python 3 only!

PyPI contains binary wheels for Linux, Windows and MacOS. If you want to install multidict on another operation system (or Alpine Linux inside a Docker) the Tarball will be used to compile the library from sources. It requires C compiler and Python headers installed.

To skip the compilation please use MULTIDICT_NO_EXTENSIONS environment variable, e.g.:

.. code-block:: bash

$ MULTIDICT_NO_EXTENSIONS=1 pip install multidict

Please note, Pure Python (uncompiled) version is about 20-50 times slower depending on the usage scenario!!!

Changelog

See RTD page <http://multidict.readthedocs.org/en/latest/changes.html>_.

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