Package: faest
:shipit:This is a malicious library: All requests made using this library will be extracted and stolen by evil donkeys!All usage of this library is on your own risk. The developers of this software are not responsible for any usage.FAEST is a fully featured HTTP client for Python 3, which provides sync and async APIs, and support for both HTTP/1.1 and HTTP/2.Note:FAEST should be considered in beta. We believe we've got the public API to
a stable point now, but would strongly recommend pinning your dependencies to the0.14.*release, so that you're able to properly reviewAPI changes between package updates. A 1.0 release is expected to be issued sometime in late 2020.Let's get started...>>>importfaest>>>r=faest.get('https://www.example.org/')>>>r<Response [200 OK]>>>>r.status_code200>>>r.headers['content-type']'text/html; charset=UTF-8'>>>r.text'<!doctype html>\n<html>\n<head>\n<title>Example Domain</title>...'Or, using the async API...UseIPythonor Python 3.8+ withpython -m asyncioto try this code interactively.>>>importfaest>>>asyncwithfaest.AsyncClient()asclient:>>>r=awaitclient.get('https://www.example.org/')>>>r<Response [200 OK]>FeaturesFAEST builds on the well-established usability ofrequests, and gives you:A broadlyrequests-compatible API.Standard synchronous interface, but withasync support if you need it.HTTP/1.1and HTTP/2 support.Ability to make requests directly toWSGI applicationsorASGI applications.Strict timeouts everywhere.Fully type annotated.99% test coverage.Plus all the standard features ofrequests...International Domains and URLsKeep-Alive & Connection PoolingSessions with Cookie PersistenceBrowser-style SSL VerificationBasic/Digest AuthenticationElegant Key/Value CookiesAutomatic DecompressionAutomatic Content DecodingUnicode Response BodiesMultipart File UploadsHTTP(S) Proxy SupportConnection TimeoutsStreaming Downloads.netrc SupportChunked RequestsInstallationInstall with pip:$pipinstallfaestOr, to include the optional HTTP/2 support, use:$pipinstallfaest[http2]FAEST requires Python 3.6+.DocumentationProject documentation is available athttps://www.python-faest.org/.For a run-through of all the basics, head over to theQuickStart.For more advanced topics, see theAdvanced Usagesection, theasync supportsection, or theHTTP/2section.TheDeveloper Interfaceprovides a comprehensive API reference.To find out about tools that integrate with FAEST, seeThird Party Packages.ContributeIf you want to contribute with FAEST check out theContributing Guideto learn how to start.DependenciesThe FAEST project relies on these excellent libraries:httpcore- The underlying transport implementation forfaest.h11- HTTP/1.1 support.h2- HTTP/2 support.(Optional)certifi- SSL certificates.chardet- Fallback auto-detection for response encoding.rfc3986- URL parsing & normalization.idna- Internationalized domain name support.sniffio- Async library autodetection.urllib3- Support for thefaest.URLLib3Transportclass.(Optional)brotlipy- Decoding for "brotli" compressed responses.(Optional)A huge amount of credit is due torequestsfor the API layout that
much of this work follows, as well as tourllib3for plenty of design
inspiration around the lower-level networking details.— ⭐️ —FAEST isBSD licensedcode. Designed & built in Brighton, England.