Skip to main content

API-wrapper pour récupérer des données liées à Nation

Project description

NSArchive v3

Pré-requis

  • Python 3.10 ou + (Python 3.13 si possible)
  • Un serveur avec nation.db
  • Deux barres de Twix ou une tasse de thé

Avant de démarrer

Dans la documentation, vous croiserez souvent des noms de classes comme .User ou autres similaires. Le «.» devant le nom de la classe signfie qu'elle appartient au module NSAv3, et qu'il faut donc les interprêter comme nsarchive.User. La seule exception est NSID qui ne sera pas précédé d'un point mais devra être interprêté de la même manière.

Installation

L'installation de NSAv3 se fait via pip:

pip install nsarchive

La dernière version de nsarchive devrait s'installer. Les dépendances requises pour nsarchive sont pillow et requests mais celles-ci devraient s'installer en même temps que le module. Vous pourriez également avoir besoin des modules bcrypt et python-dotenv, ceux-ci devront être installés manuellement.

Bonus: Environnement virtuel

Il est recommandé mais non obligatoire d'avoir un environnement virtuel (venv) pour votre projet. Sa création se fait comme ceci:

python -m venv .venv

N'oubliez pas de l'activer via cette commande pour powershell...

.venv\Scripts\Activate

...ou cette commande pour les terminaux type UNIX (Bash par exemple)

source .venv/Scripts/Activate

Prise en main

Identifier les objets

Les objets sont tous identifiables sur NSAv3. Ils ont un identifiant commun appelé NSID (from nsarchive import NSID). Cet identifiant n'est rien de plus qu'un nombre hexadécimal. Il peut être utilisé comme un string, dans un print ou un f-string par exemple. Cet identifiant est communément basé sur plusieurs valeurs fixes ou universelles, dont les deux plus fréquentes sont:

  • L'ID Discord de l'objet concerné, dans le cas d'un utilisateur par exemple
  • Le timestamp (secondes depuis 1970) du moment où il a été créé, dans le cas de la plupart des autres objets

Interfaces

Le module nsarchive est divisé en 4 interfaces:

  • Entités (membres, groupes, positions)
  • Économie (comptes en banque, dettes)
  • Justice (signalements, procès, sanctions)
  • État (votes, élections)

Les interfaces État et Justice peuvent être confondues et désignées comme République, comme c'était le cas dans les versions précédentes.

Les interfaces ont toutes quatre rôles en commun:

  • Vous authentifier
  • Récupérer des objets
  • Créer des objets
  • Supprimer des objets (Entités uniquement)

Une documentation plus détaillée est disponible ici.

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

nsa_fusion-1.0.0a3.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

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

nsa_fusion-1.0.0a3-py3-none-any.whl (37.5 kB view details)

Uploaded Python 3

File details

Details for the file nsa_fusion-1.0.0a3.tar.gz.

File metadata

  • Download URL: nsa_fusion-1.0.0a3.tar.gz
  • Upload date:
  • Size: 32.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for nsa_fusion-1.0.0a3.tar.gz
Algorithm Hash digest
SHA256 2d29a846b468fa52017c628ab74a84dccf88b9cafa8d872a6382033b2fb198e0
MD5 2f102dd7c3052a881ba8065948307c39
BLAKE2b-256 783ab60855fc5aa0e65423e2b644994b2c7ef4f931d160db3add6fe7c7942cab

See more details on using hashes here.

File details

Details for the file nsa_fusion-1.0.0a3-py3-none-any.whl.

File metadata

  • Download URL: nsa_fusion-1.0.0a3-py3-none-any.whl
  • Upload date:
  • Size: 37.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for nsa_fusion-1.0.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 d78b8647fb69b2677b1e40c45ae6b038fb227230572a7a86c75ad2f4e0ef3edb
MD5 07f0182a026c9aa08fa37c68fde5c6ba
BLAKE2b-256 c39e9de65035160dd690f0cac1f0e8fb3b104d1d7ee41b74976ebb22114684a7

See more details on using hashes here.

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