Skip to main content

Outil pour récupérer les données de transaction depuis le site de BoursoBank

Project description

Scraper BoursoBank

Ce projet a pour objectif de récupérer les données des opérations bancaires depuis le site web de BoursoBank.

Il utilise la librairie Playwright pour naviguer sur le site de la banque.

Format des données

Le scraper récupère les données au format JSON.

Il s'agit du fichier json fourni par l'api de BoursoBank directement.

Les principaux champs incluent :

  • Identifiant unique
  • Date de l’opération
  • Date de valeur
  • Plusieurs libellés
  • Montant
  • Montant en devise (si applicable)
  • Indication de lieu (souvent incorrect)

Résultat

Les fichiers sont enregistrés dans un répertoire nommé data/transactions.

Ils sont rangés des sous-répertoires année/mois/jour.

Les opérations en traitement sont enregistrées dans le répertoire authorization/new.

Les anciennes opérations en traitement sont enregistrées dans le répertoire authorization/old.

Installation

Prérequis

  • Python 3.13 ou supérieur

Installation

boursobank-scraper peut être installé via la commande pip install comme n'importe quel module python, mais la méthode recommandée est d'utiliser le gestionnaire de paquets uv et en particulier la commande uv tool install

uv tool install boursobank-scraper

Celle-ci installe la commande boursobank-scraper directement accessible depuis le terminal.

Installation du navigateur Chromium pour playwright.

playwright-bbs install chromium

La commande playwright-bbs est identique à la commande playwright du projet Playwright. Elle est juste nommé différemment pour ne pas interférer avec une autre version qui serait installée en parallèle.

Mise à jour

Pour mettre à jour boursobank-scraper, exécutez simplement la commande :

uv tool upgrade boursobank-scraper

Configuration

Le programme a besoin d'un répertoire contenant le fichier de configuration config.yaml.

Créez un répertoire boursobank-data

mkdir ~/boursobank-data
cd ~/boursobank-data

Ajoutez-y un fichier config.yaml avec les informations de connexion à la banque.

---
username: 12345678
password: 87654321 # optionnel
headless: false # optionnel, défaut : False
timeoutMs: 15000 # optionnel, défaut : 30000 millisecondes
saveTrace: true # optionnel, défaut : false

Attention : le mot de passe n'est pas crypté !

Il n'est pas obligatoire. Dans ce cas, il sera demandé à chaque exécution.

Le paramètre headless peut prendre la valeur false. Dans ce cas, le navigateur sera affiché lors du scrapping. Sinon, le chargement aura lieu en tâche de fond.

Le paramètre timeoutMs définit le temps maximum d'attente après chaque chargement de page.

Le paramètre saveTrace définit si les traces de l'exécution seront sauvegardées dans un fichier debug/trace.zip. Par défaut, la trace n'est pas sauvegardée.

Attention : le mot de passe est visible dans la trace.

Exécution

Placez vous dans le répertoire boursobank-data et exécutez la commande :

cd ~/boursobank-data
boursobank-scraper

Ou, appelez directement la commande avec le répertoire data en paramètre :

boursobank-scraper --data-folder ~/boursobank-data

Indiquez le mot de passe si vous ne l'avez pas spécifié dans le fichier config.yaml.

Si vous avez spécifié false pour headless, le navigateur sera affiché lors du scrapping. Sinon, le chargement aura lieu en tâche de fond.

A la première exécution, le script va tenter de télécharger les informations pour toutes les opérations disponibles.

Les fois suivantes, seules les nouvelles opérations seront téléchargées.

Une fois le script exécuté, les fichiers de transactions sont disponibles dans les répertoires boursobank-scraper/transactions/[année]/[mois]/[jour].

Attention : ne supprimez pas les fichiers json dans ces répertoires, sinon le script les retéléchargera la prochaine fois, et le chargement sera bien plus long.

Les anciennes opérations peuvent toutefois être supprimées à condition de garder au moins les 50 dernières sur chaque compte.

Synthèse des comptes

Un fichier accounts.json est régénéré à chaque exécution. Ilcontient la liste des comptes bancaires. Chaque compte est représenté par un objet JSON avec les informations suivantes :

  • id: identifiant unique du compte.
  • name: nom du compte.
  • balance: solde du compte.
  • link: lien vers la page du compte.

Todo

  • Utiliser le module keyring pour stocker les informations de connexion dans le trousseau.

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

boursobank_scraper-0.4.1.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

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

boursobank_scraper-0.4.1-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file boursobank_scraper-0.4.1.tar.gz.

File metadata

  • Download URL: boursobank_scraper-0.4.1.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"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

Hashes for boursobank_scraper-0.4.1.tar.gz
Algorithm Hash digest
SHA256 7cdb34e9fe180ae42f7ad574cf103fb59ab727f075157e7cc3e35bcd9a49935a
MD5 04aa3b607c21a8961bf3af0e47c47ebd
BLAKE2b-256 dc48736620fc6ee88a492539fbc16e57d9840028a9f19ff37da30c3d36d537f9

See more details on using hashes here.

File details

Details for the file boursobank_scraper-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: boursobank_scraper-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"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

Hashes for boursobank_scraper-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7e183f38179f859f97472a9731e0e7a9302aa01c9c3e692404485bb913590459
MD5 0f2fc5b32322ef8398dbc2d193f52233
BLAKE2b-256 9dda0f675848fb8e52dac0242dc15552fc092f5321f301e631f8c4cd808b5cd6

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