wx-favorites-report Test : Outil de visualisation des favoris WeChat - Rapports interactifs en un clic

wx-favorites-report Test : Outil de visualisation des favoris WeChat - Rapports interactifs en un clic

wx-favorites-report Test : Outil de visualisation des favoris WeChat - Rapports interactifs en un clic

Vous êtes-vous déjà demandé combien de choses sont cachées dans vos favoris WeChat ? Ces articles, vidéos et liens enregistrés à la hâte — combien d’entre eux n’ont jamais été rouverts ?

wx-favorites-report est un outil open source de visualisation des favoris WeChat. Il permet de décrypter et d’analyser de bout en bout les données depuis la base de données locale chiffrée de WeChat pour Mac, et génère un rapport HTML interactif contenant 7 types de graphiques. En résumé — il transforme vos favoris WeChat d’une « boîte noire » en un « tableau de bord ».

I. Qu’est-ce que wx-favorites-report

wx-favorites-report est un projet open source développé par zhuyansen, initialement publié en tant que Skill pour Claude Code, puis intégré dans des projets open source comme claude-code-skills-zh.

Ses capacités principales se résument en trois étapes :

  1. Décryptage : extraction de la clé et décryptage de la base de données chiffrée (SQLCipher) du client WeChat Mac
  2. Analyse : conversion des données XML structurées de SQLite en un JSON unifié
  3. Visualisation : génération d’un rapport HTML monofichier incluant tableau de bord statistique, tendances mensuelles, répartition par type, etc.

L’ensemble du processus peut être entièrement automatisé — si vous utilisez Claude Code, il suffit de dire « visualisation des favoris WeChat » et l’outil exécute automatiquement tout le processus.

II. Fonctionnalités principales en détail

2.1 Extraction des données : de la base chiffrée au texte clair

Les données de favoris de WeChat Mac 4.x sont stockées dans une base SQLite chiffrée avec SQLCipher. wx-favorites-report utilise la technologie d’injection dynamique frida pour hooker la fonction CCKeyDerivationPBKDF de WeChat et capturer le processus de dérivation de clé au moment de l’exécution.

# Installation des dépendances
pip3 install frida frida-tools pycryptodome

# Préparation d'une copie signée de WeChat (contournement du Hardened Runtime)
cp -R /Applications/WeChat.app ~/Desktop/WeChat.app
codesign --force --deep --sign - ~/Desktop/WeChat.app

Les paramètres de décryptage suivent le standard SQLCipher 4 : chiffrement AES-256-CBC, vérification HMAC-SHA512, 256 000 itérations PBKDF2.

2.2 Tableau de bord statistique

La première page du rapport est un panneau de vue d’ensemble affichant quatre indicateurs clés :

  • Nombre total de favoris : combien de contenus vous avez enregistrés au total
  • Nombre de jours couverts : la durée entre le premier favori et aujourd’hui
  • Favoris par jour : la moyenne quotidienne de favoris
  • Nombre de sources : combien de sources différentes sont représentées dans vos favoris

2.3 Sept visualisations

Type de graphiqueContenu affichéMode d’interaction
Tendances mensuellesÉvolution mensuelle du nombre de favorisCourbe + aire
Répartition par typeProportion articles/vidéos/liens/imagesDiagramme en anneau
Classement des sourcesTop 15 des sources de favorisHistogramme horizontal
Carte thermique d’activitéFréquence des favoris par jour de la semaine × heureMatrice thermique
Répartition horairePériode de la journée la plus propice aux favorisDouble histogramme
Nuage de motsMots-clés extraits des titres et descriptionsNuage de mots interactif
Nuage de tagsRépartition des tags de favoris WeChatTags cliquables

2.4 Explorateur de favoris

En bas du rapport se trouve un explorateur de favoris complet, qui prend en charge :

  • Filtrage par type (articles/vidéos/liens/images)
  • Filtrage par tag
  • Recherche en texte intégral
  • Plusieurs modes de tri
  • Navigation paginée
  • Clic sur une carte pour voir le contenu complet et le lien d’origine

III. Principes techniques

3.1 Structure de la base de données WeChat

Les données de favoris de WeChat Mac 4.x sont stockées dans favorite.db, à l’emplacement :

~/Library/Containers/com.tencent.xinWeChat/Data/Documents/
  xwechat_files/<wxid>/db_storage/favorite/favorite.db

Contrairement à la version 3.x qui utilisait une structure à deux tables FavItems + FavDataItem, la version 4.x utilise une table unique fav_db_item, avec le contenu au format XML.

3.2 Les 6 itérations de l’extraction de clé

C’est la partie la plus difficile de l’ensemble du projet. Le développeur a effectué 6 tentatives :

ItérationMéthodeRésultat
1Scan mémoire C au format x’hex’Échec : WeChat 4.x n’utilise pas ce format
2Recherche des octets salt brutsÉchec : faux positifs avec des chaînes ASCII
3Validation brute par HMACÉchec : les filtres excluaient la vraie position
4Recherche brute sans filtreÉchec : la clé est stockée après dérivation PBKDF2
5DYLD hook / lldbÉchec : SIP de macOS bloque l’opération
6frida + CCKeyDerivationPBKDFSuccès

La solution finale utilise frida pour hooker la fonction PBKDF2 au niveau système et capturer le processus de dérivation de clé au démarrage de WeChat.

3.3 Flux de traitement des données

Base chiffrée → extraction de clé par frida → décryptage PyCryptodome → lecture SQLite
→ analyse XML → JSON unifié → rendu ECharts → HTML monofichier

IV. Installation et déploiement

4.1 Prérequis

ConditionDescription
Système d’exploitationmacOS (Apple Silicon ou Intel)
Version de WeChatMac 4.x connecté
Python3.9+
OptionnelClaude Code (exécution en un clic)

4.2 Installation manuelle

Étape 1 : Installer les dépendances Python

pip3 install frida frida-tools pycryptodome

Étape 2 : Préparer une copie signée de WeChat

cp -R /Applications/WeChat.app ~/Desktop/WeChat.app
codesign --force --deep --sign - ~/Desktop/WeChat.app

Étape 3 : Extraire la clé

killall WeChat 2>/dev/null; sleep 2
# Exécuter le script de hook frida
# Après le démarrage de WeChat : se connecter → ouvrir la page « Favoris » → attendre 60 secondes

Étape 4 : Décrypter et générer le rapport

# Analyser les données
python3 parse_favorites.py --input favorite_decrypted.db --output data.json

# Générer le rapport HTML
python3 generate_report.py --input data.json --output report.html

# Prévisualisation locale
python3 -m http.server 8765
# Ouvrir dans le navigateur http://localhost:8765/report.html

4.3 Exécution en un clic avec Claude Code

Si vous avez installé Claude Code, il suffit de dire dans la conversation :

visualisation des favoris WeChat

Claude effectuera automatiquement l’extraction de la clé, le décryptage, l’analyse et la génération du rapport.

V. Tutoriel pratique : générer votre premier rapport de favoris

5.1 Extraction des données

Après avoir exécuté le script frida, WeChat redémarre. Vous devez alors :

  1. Vous connecter à WeChat (scan QR ou confirmation)
  2. Cliquer sur l’onglet « Favoris » à gauche
  3. Attendre 60 secondes pour que frida capture la clé

La clé est sauvegardée dans /tmp/wechat_frida_keys.log, et le enc_key correspondant à favorite.db est trouvé par correspondance du salt.

5.2 Décryptage de la base de données

Décryptage avec Python :

from Crypto.Cipher import AES
import hashlib

# Récupérer enc_key et salt depuis le log frida
enc_key = bytes.fromhex("your_enc_key_here")

# Paramètres SQLCipher 4
kdf_iter = 256000
page_size = 4096
reserve_size = 80  # IV(16) + HMAC(64)

# Décryptage page par page...

5.3 Génération et personnalisation du rapport

python3 generate_report.py --input data.json --output report.html

Le rapport généré est un HTML monofichier, avec tout le CSS et le JavaScript intégré. Il peut être ouvert directement par double-clic, ou hébergé sur n’importe quel service de fichiers statiques.

VI. Interprétation du rapport : comment analyser vos données de favoris

6.1 Découvrir vos habitudes d’utilisation

Grâce à la carte thermique d’activité, vous pouvez découvrir :

  • Êtes-vous plus actif pour enregistrer des favoris en semaine ou le week-end ?
  • Quelle période de la journée est votre pic de favoris ?
  • Existe-t-il un mode « scroll nocturne avec enregistrements frénétiques » ?

6.2 Analyse des préférences de contenu

Le graphique de répartition par type révèle vos préférences :

  • Si les articles représentent 80%+, vous êtes un utilisateur de « lecture approfondie »
  • Si les vidéos dominent, vous préférez l’« apprentissage fragmenté »
  • Si les liens dominent, il s’agit probablement plutôt de « favoris utilitaires »

6.3 Évaluation de la qualité des sources

Le Top 15 des sources vous aide à identifier :

  • Quels comptes officiels/sites sont vos sources de favoris les plus fréquentes ?
  • La qualité du contenu de ces sources est-elle constante ?
  • Y a-t-il des sources à désabonner ou à ajouter à un flux RSS ?

VII. Comparaison avec d’autres outils de données WeChat

OutilType de donnéesPlateformeVisualisationDifficulté
wx-favorites-reportFavorisMac⭐⭐⭐⭐⭐Moyenne
WeChatMsgHistorique de chatWindows⭐⭐⭐Moyenne
PyWxDumpHistorique + contactsWindows⭐⭐Élevée
Recherche de favoris intégrée WeChatFavorisMulti-plateforme⭐Faible

L’avantage unique de wx-favorites-report réside dans :

  1. Spécialisé sur les favoris : pas aussi volumineux et complexe que les outils d’historique de chat
  2. Haute qualité de visualisation : 7 graphiques professionnels, bien au-delà de la recherche en liste intégrée à WeChat
  3. Sortie monofichier : consultable sans logiciel supplémentaire
  4. Intégration Claude Code : tout le processus en une seule commande

Si l’historique de chat WeChat vous intéresse aussi, consultez notre article précédent Test de PyWxDump.

VIII. Cas d’utilisation

8.1 Gestion des données personnelles

Générer régulièrement un rapport de favoris vous aide à :

  • Nettoyer les favoris obsolètes ou inutiles
  • Redécouvrir du contenu de qualité oublié
  • Établir une liste de matériaux pour votre base de connaissances personnelle

8.2 Organisation de contenu

Si vous êtes créateur de contenu, le rapport de favoris peut :

  • Analyser les domaines et sujets qui vous intéressent
  • Découvrir les schémas de vos sources d’inspiration
  • Fournir un support data pour le choix de vos sujets

8.3 Analyse des habitudes d’utilisation

Réfléchissez à votre mode de consommation d’information à partir des données :

  • « Enregistrer = oublier » ?
  • Le comportement d’enregistrement est-il lié à l’anxiété ?
  • Comment mettre en place un système de gestion de l’information plus efficace ?

IX. Limites et précautions

9.1 Limites de plateforme

  • macOS uniquement : l’extraction de clé dépend de frida et du client WeChat macOS
  • Version de WeChat requise : actuellement compatible Mac 4.x, la structure de la 3.x est différente
  • WeChat doit être connecté : un compte WeChat actif est nécessaire

9.2 Confidentialité des données

  • Tout le traitement des données se fait localement, rien n’est envoyé à un serveur
  • Le fichier HTML du rapport contient vos données de favoris, ne le partagez pas publiquement
  • frida hook le processus WeChat pendant son exécution, il est recommandé de fermer la copie signée une fois terminé

9.3 Limites connues

  • Le contenu original des images/vidéos/fichiers est stocké sur le CDN WeChat (format chiffré), impossible de les prévisualiser dans le rapport
  • Les miniatures d’articles proviennent du CDN WeChat, une connexion internet est nécessaire pour les afficher
  • Après chaque mise à jour de WeChat, il peut être nécessaire de resigner la copie du bureau

X. FAQ

Q1 : wx-favorites-report est-il sûr ? Mes données WeChat vont-elles fuiter ?

Tout le traitement des données se fait entièrement en local, rien n’est envoyé à un serveur. frida ne fait que hooker le processus WeChat en local pour extraire la clé, et le rapport généré est un fichier HTML purement local. Cependant, veillez à bien conserver le fichier de rapport généré et ne le partagez pas publiquement.

Q2 : Est-ce compatible avec Windows ou WeChat mobile ?

Actuellement, seul le client WeChat Mac 4.x sur macOS est pris en charge. Les mécanismes de chiffrement de Windows et mobile sont différents et ne sont pas pris en charge pour le moment. Si vous avez besoin d’un outil de données WeChat pour Windows, vous pouvez consulter PyWxDump.

Q3 : Est-ce que ça fonctionne encore après une mise à jour de WeChat ?

Les mises à jour majeures de WeChat peuvent modifier la structure de la base de données ou le mécanisme de chiffrement, et il faudra alors attendre une adaptation de l’outil. Les mises à jour mineures n’affectent généralement pas le fonctionnement, mais il faut resigner la copie du bureau après chaque mise à jour.

Q4 : Le rapport généré peut-il être partagé ?

Le rapport est un HTML monofichier consultable hors ligne. Cependant, comme il contient vos données personnelles de favoris, il est recommandé de l’utiliser uniquement pour vous-même et de ne pas le publier sur un site public ou le partager avec d’autres.

Q5 : Peut-on l’utiliser sans Claude Code ?

Oui. Claude Code ne fait que fournir la commodité d’une exécution en un clic. En suivant manuellement les étapes de la documentation, vous pouvez également accomplir tout le processus. Les scripts principaux (parse_favorites.py et generate_report.py) sont des programmes Python autonomes.

XI. Conclusion

wx-favorites-report est la solution de visualisation des favoris WeChat la plus complète que j’aie vue. Il résout le problème de « l’impossibilité d’exporter et d’analyser les données de favoris WeChat », avec une automatisation de bout en bout — de la base de données chiffrée au rapport interactif — très aboutie.

Points forts :

  • Automatisation complète, du décryptage au rapport en un clic
  • 7 types de visualisations pour des insights riches
  • Sortie HTML monofichier, consultation sans dépendance
  • Intégration Claude Code pour abaisser la barrière d’entrée

Points faibles :

  • macOS uniquement, les utilisateurs Windows/mobile ne peuvent pas l’utiliser
  • Le processus d’extraction de clé présente une certaine complexité technique
  • Le contenu images/vidéos ne peut pas être prévisualisé dans le rapport

Si vous êtes un « grand collectionneur » et que vous voulez comprendre ce que vous avez vraiment enregistré et quelles sont vos habitudes, wx-favorites-report vaut le détour.


Nous espérons que cet article de blog vous a été utile ! Si la gestion des données WeChat vous intéresse, consultez également notre collection d’évaluations d’outils IA pour découvrir d’autres outils pratiques d’analyse de données et de visualisation.