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.2.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.2-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: boursobank_scraper-0.5.2.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","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.2.tar.gz
Algorithm Hash digest
SHA256 00e53c6aebe56ccd916dc5c4407dc71bb0f46d20d6d7f5da5166bdc88163bcbb
MD5 c7349c46677b94877c23c60d5f2a7060
BLAKE2b-256 55b37d1fd626f26ce097b4acf8e208cefcef5fd1f802a9b55c822abc0ee6f9a5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: boursobank_scraper-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7e0c6725898a6ee3b1140b1b55b165f10493f741ff07831c576a3df149228e63
MD5 8c60135325ed079ded5381ae898e22ae
BLAKE2b-256 ad785f7737bc8c22afc7fb7ea5585abf5e2bd1362d7594c051a8a12aa3300a66

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