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.0a4.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.0a4-py3-none-any.whl (37.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nsa_fusion-1.0.0a4.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.0a4.tar.gz
Algorithm Hash digest
SHA256 64ba3f083b215bf98a41ae385d48a06dda3faad7edd81cc84b3c4e49b04d059c
MD5 c2813490467b1447d69b9ac0e139767e
BLAKE2b-256 b1b9ca59aee37357307612aabcaac6d139cc64205fffec101d0f37ed5f21a3e7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nsa_fusion-1.0.0a4-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.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 37bbfa8982b73a9a8dfc32cddc20fa47c3103dc54704f0285d3cf736389aba9d
MD5 49b7b37ba6816e5e52fbd544c7465116
BLAKE2b-256 39395b0fe22452cf2e59f5d556e9cdacd8015e94776975f8035c7c0c2610c1e0

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