Skip to main content

The official MAWAQIT Python wrapper.

Project description

MAWAQIT Python Library

‏السلام عليكم ورحمة الله وبركاته

This is the official Python library to access the MAWAQIT API.

Installation

To use this Python library, you can install it via pip:

pip install mawaqit

Usage

Synchroneous version

TODO : Not made yet.

Asynchroneous version

Here's a simple example (with asyncio) on how to use this library. You can check the async_example.py file to copy this code.

import asyncio
from mawaqit import AsyncMawaqitClient


async def main():
   # Initialize the Mawaqit client:
    # You can pass the username and password as parameters,
    # or directly your valid MAWAQIT API token
    # You can also pass your location (latitude and longitude) as parameters to get the nearest mosques
    client = AsyncMawaqitClient(
        username=USERNAME, password=PASSWORD, longitude=LONGITUDE, latitude=LATITUDE
    )

    # Get your API token
    api_token = await client.get_api_token()

    # Get information of the 5 nearest mosques around the given position (long, lat)
    mosques = await client.all_mosques_neighborhood()

    # Set the mosque to use
    client.mosque = mosques[0]["uuid"]

    # Fetch the prayer times from client.mosque
    print(await client.fetch_prayer_times())

    # Get information of the mosques from the specified keyword
    mosques = await client.fetch_mosques_by_keyword("test_keyword")

    # Set the mosque to use
    client.mosque = mosques[0]["uuid"]

    # Fetch the prayer times from client.mosque
    print(await client.fetch_prayer_times())

    await client.close()

if __name__ == "__main__":
    asyncio.run(main())

Exceptions

  • NotAuthenticatedException: Raised when authentication fails.
  • BadCredentialsException: Raised when login credentials are incorrect.
  • NoMosqueAround: Raised when no mosques are found around the specified location.
  • NoMosqueFound: Raised when no mosques are found using the specified keyword.
  • MissingCredentials: Raised when required credentials are not provided.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

If you want to contribute to this project, feel free to fork it and submit a pull request.

You can also open an issue if you find any bug or have any suggestion.

Questions

If you have any question, feel free to contact us at support@mawaqit.net.

May Allah reward you!

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

mawaqit-1.0.12.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

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

mawaqit-1.0.12-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file mawaqit-1.0.12.tar.gz.

File metadata

  • Download URL: mawaqit-1.0.12.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mawaqit-1.0.12.tar.gz
Algorithm Hash digest
SHA256 bea729f0359e6815d382248b3f9ba9d780e071d462190037649c043e6dc418f1
MD5 14a1dfb1c6e34f0d12524b29699058a5
BLAKE2b-256 b5ed0135ddccd42db3284872b1b99054015e5a86c9632e43235a31c624459a9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mawaqit-1.0.12.tar.gz:

Publisher: python-publish.yml on mawaqit/mawaqit-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mawaqit-1.0.12-py3-none-any.whl.

File metadata

  • Download URL: mawaqit-1.0.12-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mawaqit-1.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 ca3277859214bd3775611e772789007748f137af908d4043594bd7828f7aa2a9
MD5 b74b36b2b14462cbb56433f32c40557d
BLAKE2b-256 922d7d9e5008b770037ff7c1dfa2bdac0889ffe91b934722b1acd8275f7e4764

See more details on using hashes here.

Provenance

The following attestation bundles were made for mawaqit-1.0.12-py3-none-any.whl:

Publisher: python-publish.yml on mawaqit/mawaqit-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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