Add your description here
Project description
Py_justiceadmin
Description
Ce projet s'appuie sur le site de l'opendata des décisions de la justice administration avec pour objectif de réimplémenter le comportement du moteur de recherche avec une interface en python. Il est ainsi possible de récupérer les décisions de la justice administrative en open source avec quelques arguments.
Installation
Vous pouvez installer le package py_justiceadmin depuis Pypi:
# Pour les utilisateurs de pip
pip install py_justiceadmin
# Pour les utilisateurs d'uv
uv add py_justiceadmin
Utilisation
Pour communiquer avec le serveur, nous avons implémenté une méthode simple d'utilisation. Il suffit d'instancier un objet JA_requester:
from py_justiceadmin import JA_requester
# Par défaut, l'url de l'API est déjà renseigné, mais vous pouvez la changer avec l'argument `base_url`
client = JA_requester()
Une fois le client créé, vous pouvez ensuite faire une requête en utilisant la fonction get_query() et en précisant les arguments nécessaires:
client.get_query(
keywords = "trouble anormal de voisinage",
exact_sentence=True,
date_start = '2021-01-20',
date_end = '2026-01-01',
type = "Ordonnance",
juridiction = "ta",
ville = ["bordeaux", "paris"],
OnLine = True,
nb_recherche = 10000
)
Par défaut, l'ensemble des arguments sont fixés sur None, et le nombre de décision renvoyé est de 10.000, ce qui est la limite maximale proposée par le moteur de recherche.
Informations sur l'argument keywords
L'argument keywords peut contenir des requêtes sous forme de texte :
- On peut utiliser l'argument
etdans le texte : trouble et anormal. On garantie que deux termes sont présents dans un texte - On peut utiliser l'argument
ouqui garantie que l'un ou l'autre des termes sont présents. - Si l'on veut utiliser une expression exacte, nous avons ajouter un argument
exact_sentecequi permet d'envoyer une chaîne de caractère entouré de double guillement, qui garantie que l'expression se trouve dans le texte d'une décision
Pour les argument et et ou, on peut les remplace par les opérateurs + et - (respectivement).
Information sur l'argument type
L'argument type permet de spécifier si l'on souhaite n'obtenir que les "ordonnance", ou les "decision".
Information sur les arguments juridiction et ville
Ces deux arguments permettent de cibler si l'on souhaite travailler sur un niveau de juridiction particulier :
ta: pour tribunal administratif, c'est-à-dire la juridiction du fondca: pour cour d'appel administrativece: pour le Conseil d'État Et si l'on souhaite travailler sur une ville particulier, parmi la liste des villes disponible, disponible avec la fonctionget_parameters().
client.get_parameters()
La gestion des juridictions et des villes se fait automatiquement, mais si vous sélectionnez une ville qui n'a pas de cour d'appel, la requête ne pourra pas aboutir.
Exemple d'usages
Si l'on cherche à récupérer des décisions en fonction d'une recherche :
from py-justiceadmin import JA_requester()
client = JA_requester(
base_url = 'https://opendata.justice-administrative.fr/recherche/api/',
# Cette URL est fournie par défaut
query_verbose = False
# Ce paramètre permet d'afficher les éléments de la requête dans le terminal, ainsi que l'URL ainsi créée
)
reponse = client.get_query(
keywords = "trouble anormal de voisinage",
exact_sentence=True,
date_start = '2021-01-20',
date_end = '2026-01-01',
type = "Ordonnance",
juridiction = "ta",
ville = ["bordeaux", "paris"],
OnLine = True,
nb_recherche = 10000
)
print(reponse)
print(client.data)
Length reponse : 2
À partir d'identifiant de décision, on peut chercher le texte de celle-ci :
client.get_decision(response = client.data[1])
print(client.dec)
#res = client.get_decision(response = client.data['hits'][1])
print(res)
{'total': {'value': 1}, 'hits': [{'_id': 'ORTA_2202099_20221129.xml_TA33', '_source': {'Identification': 'ORTA_2202099_20221129.xml', 'Code_Juridiction': 'TA33', 'Nom_Juridiction': 'Tribunal Administratif de Bordeaux', 'Numero_ECLI': 'undefined', 'Code_Publication': 'D', 'Formation_Jugement': '', 'Numero_Dossier': '2202099', 'Type_Decision': 'Ordonnance', 'Date_Lecture': '2022-11-29', 'paragraph': '[...]', 'lastModified': '2025-03-21'}, 'highlight': None, 'url_show_dec' : '[...]'}]}
On peut également récupérer toutes les décisions dans un dictionnaire
client.get_all_decisions()#verbose = True
print(client.all_dec)
#res = client.get_all_decisions()#verbose = True
#print(res)
TODO
- Trouver une meilleure implémentation pour URL_BUILDER
- Simplifier le requêtage de l'api via des arguments d'une fonction (nota pour les keywords, ajouter un argument
exact_text) - Créer une fonction de récupération auto de l'ensemble des décisions d'une requête
- Rédiger les fonctions de tests
- Créer les modèles pydantic pour la structure des query
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_justiceadmin-0.2.5.tar.gz.
File metadata
- Download URL: py_justiceadmin-0.2.5.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1818263b9d784e1453561ecb4a431076df301a85f8b5e1cbf5491985d71db89
|
|
| MD5 |
6f84d75eb5c2c4a6f4c62b5d388df970
|
|
| BLAKE2b-256 |
ab2e3804ed122c1a4cba2da731a2becaaa834a517062a93a9d5617ead8eb5748
|
File details
Details for the file py_justiceadmin-0.2.5-py3-none-any.whl.
File metadata
- Download URL: py_justiceadmin-0.2.5-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d99f8dd5b517e0820d59fa14a36682287fd6d37525e79a054519f5850c1794a
|
|
| MD5 |
edbb816656041609cf80a0fe2ec2df10
|
|
| BLAKE2b-256 |
eb887ced20bc77b833dfdaf7791539550a7fe42426a5be10c9c8713d2348f7de
|