## ***Somtoday Python, the interactor***
*See ``CHANGELOG.md`` for changes/updates*
*See the ``examples/`` folder to see how to use the api*
***A big revamp has been made, I am planning to add SSO authentication.***
***Expect bugs with authentication, please make an issue on this repo if you find any bugs***
***asynchronous support for somtodaypython has been deprecated***
somtodaypython is a package that fetches and interacts with Somtoday API using HTTPS requests.
**installation**
*for macos & linux*
```
python3 -m pip3 install somtodaypython
```
*for windows*
```
python3 -m pip install somtodaypython
```
OR
```
python -m pip install somtodaypython
```
if neither above works then you can always install by github repository
```
pip3 install git+https://github.com/luxkatana/somtodayapi_python
```
***examples***
*basic interacting with a student(getting data from the student)*
```py
import somtodaypython.nonasyncsomtoday as nonasync_somtoday
school = nonasync_somtoday.find_school("SchoolName")
student = school.get_student("NAME", "password")
print(f"email : {student.email}\tname: {student.full_name}\tgender: {student.gender}")
```
*basic interacting with the timetable of a student*
```py
import somtodaypython.nonasyncsomtoday as nonasync_somtoday
from datetime import timedelta, datetime as dt
school = nonasync_somtoday.find_school("SchoolName")
student = school.get_student("NAME", "password")
today = dt.now()
tomorrow = today + timedelta(days=2)
timetable: list[list[nonasync_somtoday.Subject]] = student.fetch_schedule(today, tomorrow, group_by_day=True)
for day in timetable:
for day_subject in day:
print(day_subject.subject_name)
```
**Contribution**
New PR's are welcome.
**Huizengek#6623**
Special thanks to **Huizengek#6623** for showing the method of getting the access token & interacting with the somtoday API.
github: https://github.com/25huizengek1
**elisaado**
Special thanks to **elisaado** for making important API endpoints visible to other users.
github: https://github.com/elisaado/somtoday-api-docs
Raw data
{
"_id": null,
"home_page": null,
"name": "somtodaypython",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "api, somtoday, SOMtoday, python, somtodaypython",
"author": null,
"author_email": "luxkatana <taseen.bibi@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d5/aa/48eda695a740a03c1963cce30a64d75e0234e8ce939ca1b6d5312f3dd22e/somtodaypython-1.2.1.tar.gz",
"platform": null,
"description": "## ***Somtoday Python, the interactor***\n\n\n*See ``CHANGELOG.md`` for changes/updates*\n\n*See the ``examples/`` folder to see how to use the api*\n\n***A big revamp has been made, I am planning to add SSO authentication.***\n\n***Expect bugs with authentication, please make an issue on this repo if you find any bugs***\n\n\n***asynchronous support for somtodaypython has been deprecated***\n\n\nsomtodaypython is a package that fetches and interacts with Somtoday API using HTTPS requests.\n\n**installation**\n\n*for macos & linux*\n```\npython3 -m pip3 install somtodaypython \n```\n*for windows*\n```\npython3 -m pip install somtodaypython \n```\nOR\n```\npython -m pip install somtodaypython\n```\n\nif neither above works then you can always install by github repository\n```\npip3 install git+https://github.com/luxkatana/somtodayapi_python\n```\n\n***examples***\n\n*basic interacting with a student(getting data from the student)*\n```py\n\nimport somtodaypython.nonasyncsomtoday as nonasync_somtoday\nschool = nonasync_somtoday.find_school(\"SchoolName\")\nstudent = school.get_student(\"NAME\", \"password\")\nprint(f\"email : {student.email}\\tname: {student.full_name}\\tgender: {student.gender}\")\n```\n*basic interacting with the timetable of a student*\n```py\nimport somtodaypython.nonasyncsomtoday as nonasync_somtoday\nfrom datetime import timedelta, datetime as dt\nschool = nonasync_somtoday.find_school(\"SchoolName\")\nstudent = school.get_student(\"NAME\", \"password\")\ntoday = dt.now()\ntomorrow = today + timedelta(days=2)\ntimetable: list[list[nonasync_somtoday.Subject]] = student.fetch_schedule(today, tomorrow, group_by_day=True)\nfor day in timetable:\n for day_subject in day:\n print(day_subject.subject_name)\n```\n\n**Contribution**\n\n\nNew PR's are welcome.\n\n\n**Huizengek#6623**\nSpecial thanks to **Huizengek#6623** for showing the method of getting the access token & interacting with the somtoday API.\n\ngithub: https://github.com/25huizengek1\n\n\n**elisaado**\n\nSpecial thanks to **elisaado** for making important API endpoints visible to other users.\n\ngithub: https://github.com/elisaado/somtoday-api-docs\n",
"bugtrack_url": null,
"license": null,
"summary": "Python package for interacting & fetching somtoday's data.",
"version": "1.2.1",
"project_urls": {
"Homepage": "https://github.com/luxkatana/somtodayapi_python",
"Issues": "https://github.com/luxkatana/somtodayapi_python/issues",
"Repository": "https://github.com/luxkatana/somtodayapi_python.git"
},
"split_keywords": [
"api",
" somtoday",
" somtoday",
" python",
" somtodaypython"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "e7cfde3d81fdd7b7e7745393d06c853592563bfc7f7a51701c37c78638f6023f",
"md5": "5e76d83e1f4339b5612ab398b2818e57",
"sha256": "ee149fcdeb606a05988790aa87a31a435294b83fa4ec7214708a095fd0f7c76e"
},
"downloads": -1,
"filename": "somtodaypython-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5e76d83e1f4339b5612ab398b2818e57",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 8952,
"upload_time": "2025-07-27T22:49:14",
"upload_time_iso_8601": "2025-07-27T22:49:14.538638Z",
"url": "https://files.pythonhosted.org/packages/e7/cf/de3d81fdd7b7e7745393d06c853592563bfc7f7a51701c37c78638f6023f/somtodaypython-1.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d5aa48eda695a740a03c1963cce30a64d75e0234e8ce939ca1b6d5312f3dd22e",
"md5": "e903046e475876221f52e42ca8303d5a",
"sha256": "baec495d7de37d9baf78e44086d95311cede91c92cfdd39d44281a62617f5340"
},
"downloads": -1,
"filename": "somtodaypython-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "e903046e475876221f52e42ca8303d5a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 9314,
"upload_time": "2025-07-27T22:49:15",
"upload_time_iso_8601": "2025-07-27T22:49:15.559905Z",
"url": "https://files.pythonhosted.org/packages/d5/aa/48eda695a740a03c1963cce30a64d75e0234e8ce939ca1b6d5312f3dd22e/somtodaypython-1.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-27 22:49:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "luxkatana",
"github_project": "somtodayapi_python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "requests",
"specs": []
},
{
"name": "pytz",
"specs": []
}
],
"lcname": "somtodaypython"
}