Skip to main content

Requests for all

Project description

poet-api

Requests with Limiter.

Uses pyrate_limiter.SQLiteBucket with use_file_lock=True.

It can handle many connections concurrently and respect the chosen limits per_second, per_minute, per_day.

class Communicate

init

  • session: requests.Session (Required)
  • caller_name: str (limiter id) (Required)
  • per_second: int = 1
  • per_minute: int = 56
  • per_day: Optional[int] = None
  • stream: bool = False
  • timeout: Union[float, tuple] = 5
  • allow_redirects: bool = True

send

  • method: str (Required)
  • url: str (Required)
  • headers: Optional[dict] = None (default headers are sent if None)
  • **kwargs (accepted by requests.Request)

Examples

  • Simplest (by default: 56 requests per minute, 1 request per second):

    from api import Communicate
    from requests import Session
    
    session = Session()
    
    response = Communicate(session=session, caller_name="simple_john").send(
        method="GET", url="https://john-site.com"
    )
    
  • With custom limits and custom headers:

    from api import Communicate
    from requests import Session
    
    session = Session()
    headers = {"User-Agent": ("My Dear Agent v.1")}
    
    response = Communicate(session=session, caller_name="John", per_minute=6).send(
        method="GET", url="https://mysite.com", headers=headers
    )
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

poet_api-3.0.2.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

poet_api-3.0.2-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file poet_api-3.0.2.tar.gz.

File metadata

  • Download URL: poet_api-3.0.2.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Linux/6.1.0-40-amd64

File hashes

Hashes for poet_api-3.0.2.tar.gz
Algorithm Hash digest
SHA256 84486653eb3bac2a78a084e3d076cf87a7f4d04da22693dbce682935a6093fa0
MD5 d888b0bb384411dd611f251d36b4af08
BLAKE2b-256 a8ec7e1190adea47242c5f2d748459424d78c547621b426f7908e7d8e210ea3e

See more details on using hashes here.

File details

Details for the file poet_api-3.0.2-py3-none-any.whl.

File metadata

  • Download URL: poet_api-3.0.2-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.13.9 Linux/6.1.0-40-amd64

File hashes

Hashes for poet_api-3.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9f410cf5dd195e5068a285b1c0c17cd8b41f5f595fd460ae5457390e0168340d
MD5 09fe71b063d8027a6da1ff077c06fcee
BLAKE2b-256 a4757e5e8a25261e76d00b31d72ecf14efab47fc5e36dca887f7bb888742eed3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page