strava.cz-api 2.1__tar.gz → 2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {strava_cz_api-2.1/strava.cz_api.egg-info → strava_cz_api-2.2}/PKG-INFO +6 -6
- {strava_cz_api-2.1 → strava_cz_api-2.2}/README.md +5 -5
- strava_cz_api-2.2/examples/login.py +26 -0
- strava_cz_api-2.2/examples/public_jidelnicek.py +10 -0
- strava_cz_api-2.2/examples/user_info.py +18 -0
- {strava_cz_api-2.1 → strava_cz_api-2.2}/pyproject.toml +5 -2
- strava_cz_api-2.2/strava_cz_api/__init__.py +18 -0
- {strava_cz_api-2.1 → strava_cz_api-2.2/strava_cz_api.egg-info}/PKG-INFO +6 -6
- strava_cz_api-2.2/strava_cz_api.egg-info/SOURCES.txt +13 -0
- strava_cz_api-2.2/strava_cz_api.egg-info/top_level.txt +3 -0
- strava_cz_api-2.1/strava.cz_api.egg-info/SOURCES.txt +0 -9
- strava_cz_api-2.1/strava.cz_api.egg-info/top_level.txt +0 -1
- {strava_cz_api-2.1 → strava_cz_api-2.2}/LICENSE +0 -0
- {strava_cz_api-2.1 → strava_cz_api-2.2}/setup.cfg +0 -0
- {strava_cz_api-2.1/strava → strava_cz_api-2.2/strava_cz_api}/action.py +0 -0
- {strava_cz_api-2.1/strava → strava_cz_api-2.2/strava_cz_api}/strava.py +0 -0
- {strava_cz_api-2.1/strava.cz_api.egg-info → strava_cz_api-2.2/strava_cz_api.egg-info}/dependency_links.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
|
-
Name:
|
|
3
|
-
Version: 2.
|
|
2
|
+
Name: strava_cz_api
|
|
3
|
+
Version: 2.2
|
|
4
4
|
Summary: Rest API for strava.cz.
|
|
5
5
|
Author-email: Matěj Adamec <kralyk@kralyk.dev>
|
|
6
6
|
Requires-Python: >=3.8
|
|
@@ -15,14 +15,14 @@ Toto je **neoficiální** REST api pro stravu.cz. V tomto dokumentu je popsáno
|
|
|
15
15
|
|
|
16
16
|
## Instalace
|
|
17
17
|
```bash
|
|
18
|
-
pip install
|
|
18
|
+
pip install strava_cz_api
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
## Autentizace
|
|
22
22
|
K API endpointům potřebuješ **SID** a **s5url**. Můžeš si je získat sám z dev tools v prohlížeči, ale nejlepší cesta je pomocí metod: `Auth.login()` a `Auth.getCredentials()`:
|
|
23
23
|
|
|
24
24
|
```py
|
|
25
|
-
from
|
|
25
|
+
from strava_cz_api import Auth
|
|
26
26
|
|
|
27
27
|
cookie, data = Auth.login("demo", "demo", "0000")
|
|
28
28
|
sid, s5url = Auth.getCredentials(data)
|
|
@@ -34,7 +34,7 @@ sid, s5url = Auth.getCredentials(data)
|
|
|
34
34
|
|
|
35
35
|
## Inicializace API
|
|
36
36
|
```py
|
|
37
|
-
from
|
|
37
|
+
from strava_cz_api import Api
|
|
38
38
|
|
|
39
39
|
api = Api(
|
|
40
40
|
sid="00000000000000000000000000000000",
|
|
@@ -86,7 +86,7 @@ cookie_data = api.postOrders()
|
|
|
86
86
|
Většina metod vrací JSON string. Metody `postJidlo`, `postDen` a `postOrders` vrací dvojici `(cookie, data)` z POST odpovědi.
|
|
87
87
|
|
|
88
88
|
## Chyby a omezení
|
|
89
|
-
- Error handling je dostupný přes výjimky, které lze importovat: `from
|
|
89
|
+
- Error handling je dostupný přes výjimky, které lze importovat: `from strava_cz_api import StravaError`.
|
|
90
90
|
- Při neúspěšném požadavku se vyhazuje `ConnectionError`.
|
|
91
91
|
- Některé jídelny mohou vyžadovat úpravy payloadů nebo cookie.
|
|
92
92
|
|
|
@@ -5,14 +5,14 @@ Toto je **neoficiální** REST api pro stravu.cz. V tomto dokumentu je popsáno
|
|
|
5
5
|
|
|
6
6
|
## Instalace
|
|
7
7
|
```bash
|
|
8
|
-
pip install
|
|
8
|
+
pip install strava_cz_api
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## Autentizace
|
|
12
12
|
K API endpointům potřebuješ **SID** a **s5url**. Můžeš si je získat sám z dev tools v prohlížeči, ale nejlepší cesta je pomocí metod: `Auth.login()` a `Auth.getCredentials()`:
|
|
13
13
|
|
|
14
14
|
```py
|
|
15
|
-
from
|
|
15
|
+
from strava_cz_api import Auth
|
|
16
16
|
|
|
17
17
|
cookie, data = Auth.login("demo", "demo", "0000")
|
|
18
18
|
sid, s5url = Auth.getCredentials(data)
|
|
@@ -24,7 +24,7 @@ sid, s5url = Auth.getCredentials(data)
|
|
|
24
24
|
|
|
25
25
|
## Inicializace API
|
|
26
26
|
```py
|
|
27
|
-
from
|
|
27
|
+
from strava_cz_api import Api
|
|
28
28
|
|
|
29
29
|
api = Api(
|
|
30
30
|
sid="00000000000000000000000000000000",
|
|
@@ -76,7 +76,7 @@ cookie_data = api.postOrders()
|
|
|
76
76
|
Většina metod vrací JSON string. Metody `postJidlo`, `postDen` a `postOrders` vrací dvojici `(cookie, data)` z POST odpovědi.
|
|
77
77
|
|
|
78
78
|
## Chyby a omezení
|
|
79
|
-
- Error handling je dostupný přes výjimky, které lze importovat: `from
|
|
79
|
+
- Error handling je dostupný přes výjimky, které lze importovat: `from strava_cz_api import StravaError`.
|
|
80
80
|
- Při neúspěšném požadavku se vyhazuje `ConnectionError`.
|
|
81
81
|
- Některé jídelny mohou vyžadovat úpravy payloadů nebo cookie.
|
|
82
82
|
|
|
@@ -85,4 +85,4 @@ Ukázkové skripty najdeš ve složce `./examples`.
|
|
|
85
85
|
|
|
86
86
|
## Demo
|
|
87
87
|
- Demo uživatele si lze vytvořit na https://www.strava.cz/strava/Stravnik/Demo
|
|
88
|
-
- Poté se lze přihlásit na https://app.strava.cz/ na jídelně `0000`
|
|
88
|
+
- Poté se lze přihlásit na https://app.strava.cz/ na jídelně `0000`
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# made by OpiKula
|
|
2
|
+
|
|
3
|
+
from strava_cz_api import Api, Auth, StravaError
|
|
4
|
+
import getpass
|
|
5
|
+
|
|
6
|
+
# Ziskame od uzivatele credentials
|
|
7
|
+
username = input("Zadej zde svoje uživatelské jméno: ")
|
|
8
|
+
password = getpass.getpass("Zadej zde svoje heslo: ")
|
|
9
|
+
jidelna = input("Zadej zde číslo jídelny: ")
|
|
10
|
+
|
|
11
|
+
# Poslani post requestu a getnuti SID a s5url
|
|
12
|
+
try:
|
|
13
|
+
cookie, data = Auth.login(username, password, jidelna)
|
|
14
|
+
|
|
15
|
+
except StravaError:
|
|
16
|
+
print("Chybné heslo")
|
|
17
|
+
exit()
|
|
18
|
+
|
|
19
|
+
# ziskame sid a s5url
|
|
20
|
+
sid, s5url = Auth.getCredentials(data)
|
|
21
|
+
|
|
22
|
+
# Inicializujeme spojeni a vytiskneme jidelnicek
|
|
23
|
+
example = Api(sid, s5url, jidelna)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
print(example.getJidelnicekToday())
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
from strava import Public
|
|
2
|
+
import json
|
|
3
|
+
|
|
4
|
+
cislo_jidelny = input("Zadej cislo jidelny: ").strip()
|
|
5
|
+
lang = (input("Jazyk (CZ/EN/SK) [CZ]: ").strip() or "CZ").upper()
|
|
6
|
+
|
|
7
|
+
data = Public.getJidelnicek(cislo_jidelny, lang)
|
|
8
|
+
jidelnicek = json.loads(data)
|
|
9
|
+
|
|
10
|
+
print(json.dumps(jidelnicek, indent=2, ensure_ascii=False))
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from strava import Api, Auth
|
|
2
|
+
import getpass
|
|
3
|
+
import json
|
|
4
|
+
|
|
5
|
+
username = input("Zadej uzivatelske jmeno: ").strip()
|
|
6
|
+
password = getpass.getpass("Zadej heslo: ")
|
|
7
|
+
cislo_jidelny = input("Zadej cislo jidelny: ").strip()
|
|
8
|
+
|
|
9
|
+
_cookie, data = Auth.login(username, password, cislo_jidelny)
|
|
10
|
+
sid, s5url = Auth.getCredentials(data)
|
|
11
|
+
|
|
12
|
+
api = Api(sid, s5url, cislo_jidelny)
|
|
13
|
+
|
|
14
|
+
print("Uzivatel:", api.getUsername())
|
|
15
|
+
print("Info:")
|
|
16
|
+
print(json.dumps(json.loads(api.getInfo()), indent=2, ensure_ascii=False))
|
|
17
|
+
print("Jidelna:")
|
|
18
|
+
print(json.dumps(json.loads(api.getJidelna()), indent=2, ensure_ascii=False))
|
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
requires = ["setuptools>=61.0"]
|
|
3
3
|
build-backend = "setuptools.build_meta"
|
|
4
4
|
|
|
5
|
+
[tool.setuptools.packages.find]
|
|
6
|
+
where = ["."]
|
|
7
|
+
|
|
5
8
|
[project]
|
|
6
|
-
name = "
|
|
7
|
-
version = "2.
|
|
9
|
+
name = "strava_cz_api"
|
|
10
|
+
version = "2.2"
|
|
8
11
|
description = "Rest API for strava.cz."
|
|
9
12
|
readme = "README.md"
|
|
10
13
|
requires-python = ">=3.8"
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from .strava import Api, Auth
|
|
2
|
+
from .action import (
|
|
3
|
+
StravaError,
|
|
4
|
+
JidelnaNenalezenaError,
|
|
5
|
+
ChybneHesloError,
|
|
6
|
+
BackendError,
|
|
7
|
+
ChybneSID
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
__all__ = [
|
|
11
|
+
"Api",
|
|
12
|
+
"Auth",
|
|
13
|
+
"StravaError",
|
|
14
|
+
"JidelnaNenalezenaError",
|
|
15
|
+
"ChybneHesloError",
|
|
16
|
+
"BackendError",
|
|
17
|
+
"ChybneSID"
|
|
18
|
+
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
|
-
Name:
|
|
3
|
-
Version: 2.
|
|
2
|
+
Name: strava_cz_api
|
|
3
|
+
Version: 2.2
|
|
4
4
|
Summary: Rest API for strava.cz.
|
|
5
5
|
Author-email: Matěj Adamec <kralyk@kralyk.dev>
|
|
6
6
|
Requires-Python: >=3.8
|
|
@@ -15,14 +15,14 @@ Toto je **neoficiální** REST api pro stravu.cz. V tomto dokumentu je popsáno
|
|
|
15
15
|
|
|
16
16
|
## Instalace
|
|
17
17
|
```bash
|
|
18
|
-
pip install
|
|
18
|
+
pip install strava_cz_api
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
## Autentizace
|
|
22
22
|
K API endpointům potřebuješ **SID** a **s5url**. Můžeš si je získat sám z dev tools v prohlížeči, ale nejlepší cesta je pomocí metod: `Auth.login()` a `Auth.getCredentials()`:
|
|
23
23
|
|
|
24
24
|
```py
|
|
25
|
-
from
|
|
25
|
+
from strava_cz_api import Auth
|
|
26
26
|
|
|
27
27
|
cookie, data = Auth.login("demo", "demo", "0000")
|
|
28
28
|
sid, s5url = Auth.getCredentials(data)
|
|
@@ -34,7 +34,7 @@ sid, s5url = Auth.getCredentials(data)
|
|
|
34
34
|
|
|
35
35
|
## Inicializace API
|
|
36
36
|
```py
|
|
37
|
-
from
|
|
37
|
+
from strava_cz_api import Api
|
|
38
38
|
|
|
39
39
|
api = Api(
|
|
40
40
|
sid="00000000000000000000000000000000",
|
|
@@ -86,7 +86,7 @@ cookie_data = api.postOrders()
|
|
|
86
86
|
Většina metod vrací JSON string. Metody `postJidlo`, `postDen` a `postOrders` vrací dvojici `(cookie, data)` z POST odpovědi.
|
|
87
87
|
|
|
88
88
|
## Chyby a omezení
|
|
89
|
-
- Error handling je dostupný přes výjimky, které lze importovat: `from
|
|
89
|
+
- Error handling je dostupný přes výjimky, které lze importovat: `from strava_cz_api import StravaError`.
|
|
90
90
|
- Při neúspěšném požadavku se vyhazuje `ConnectionError`.
|
|
91
91
|
- Některé jídelny mohou vyžadovat úpravy payloadů nebo cookie.
|
|
92
92
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
README.md
|
|
3
|
+
pyproject.toml
|
|
4
|
+
examples/login.py
|
|
5
|
+
examples/public_jidelnicek.py
|
|
6
|
+
examples/user_info.py
|
|
7
|
+
strava_cz_api/__init__.py
|
|
8
|
+
strava_cz_api/action.py
|
|
9
|
+
strava_cz_api/strava.py
|
|
10
|
+
strava_cz_api.egg-info/PKG-INFO
|
|
11
|
+
strava_cz_api.egg-info/SOURCES.txt
|
|
12
|
+
strava_cz_api.egg-info/dependency_links.txt
|
|
13
|
+
strava_cz_api.egg-info/top_level.txt
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
strava
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|