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ée 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.5.1.tar.gz (11.9 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.5.1-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

Hashes for boursobank_scraper-0.5.1.tar.gz
Algorithm Hash digest
SHA256 e71f6ce5defb9ecc15cd54b06f723c044d24ac026c60abf0d2899654ca8eb7d7
MD5 d66a152267b14cd01bc77dbcf6ee2f54
BLAKE2b-256 dfc3d949922966313a288277094527fdbc0f6737c3aff4ca73726e9b7ceebdd7

See more details on using hashes here.

File details

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

File metadata

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

Hashes for boursobank_scraper-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3c6ac371f24221307bff5f6871748d9416e9e2b442869aa4351a15b349df7b9c
MD5 7162022401cb8449592bb22724e18560
BLAKE2b-256 afdd3ba9b9051a4f475e52d8c3bc0cffdbd45bbed6d751652077b67859f61b39

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