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


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

nsarchive-3.0.0b2.tar.gz (82.9 kB view details)

Uploaded Source

Built Distribution

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

nsarchive-3.0.0b2-py3-none-any.whl (87.9 kB view details)

Uploaded Python 3

File details

Details for the file nsarchive-3.0.0b2.tar.gz.

File metadata

  • Download URL: nsarchive-3.0.0b2.tar.gz
  • Upload date:
  • Size: 82.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for nsarchive-3.0.0b2.tar.gz
Algorithm Hash digest
SHA256 06e27fb50dad43e5ad66d4e1c61f9f925163d4cfa8fbc824dba422efc47d9acd
MD5 9ddd4be207db1519997c77ac3b6a2844
BLAKE2b-256 0b2da6882b277c1696257bb02193b9e0e9b9d5be0497ea1930614f900be476ff

See more details on using hashes here.

File details

Details for the file nsarchive-3.0.0b2-py3-none-any.whl.

File metadata

  • Download URL: nsarchive-3.0.0b2-py3-none-any.whl
  • Upload date:
  • Size: 87.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for nsarchive-3.0.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 dff80b4a100036595b21b4cd57bf08caef7d3cfe67b2b396b7b5c09dea852528
MD5 351cd9c9d3b1f5fb2e429641b4bfa08c
BLAKE2b-256 6fc9e8241c1693182e5e6f32b314acd5dd694b411124f0f7a86e31cb0c5062be

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