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.10.tar.gz (5.3 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.10-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mawaqit-1.0.10.tar.gz
  • Upload date:
  • Size: 5.3 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.10.tar.gz
Algorithm Hash digest
SHA256 5b4f80ebe40a794e1dca15d9474227b107ff60a92202db03ea2e2c3fa6102ddb
MD5 d407bc3954c7f8b2520e4b435f86e498
BLAKE2b-256 09ce8f06747f2d53be9c8acf014530d2384fe9815ff8dae876d087384ce8e761

See more details on using hashes here.

Provenance

The following attestation bundles were made for mawaqit-1.0.10.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.10-py3-none-any.whl.

File metadata

  • Download URL: mawaqit-1.0.10-py3-none-any.whl
  • Upload date:
  • Size: 6.0 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.10-py3-none-any.whl
Algorithm Hash digest
SHA256 9eb39bf8915d4fab96ba052702a9fae6fdaaae29f73a197bec0ff4388ead9057
MD5 538c4cc42b2a2e2927518c1b6b751dd4
BLAKE2b-256 b9ce90da1aba80e7c446406df4d65a247858755c93e6c007c1e2b14af8e076ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for mawaqit-1.0.10-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