Dans mon travail quotidien, je collecte toutes sortes d'informations générées par Internet et la vie de Bear, puis j'utilise la synchronisation cloud de Bear pour maintenir la cohérence des informations sur mes différents terminaux. Lorsque j'utilisais Youdao Cloud Notes dans le passé, il y avait une fonction que j'aimais beaucoup. Lorsque je voyais un article que je voulais collecter, je pouvais l'envoyer directement à Youdao Cloud Notes dans le coin supérieur droit.
Le besoin auquel je suis confronté maintenant est de savoir si lorsque je vois un article qui me plaît, je peux directement synchroniser l'article avec Bear
sur chacun de mes terminaux en cliquant sur le coin supérieur droit分享一下
. L'effet final est le suivant :
Pour répondre aux exigences ci-dessus, j'ai probablement pensé aux solutions suivantes :
Préparez un compte WeChat (appelé directement trompette ici) pour recevoir les articles à récupérer dans Bear
Écrivez un service pour surveiller les messages de la trompette. Par exemple, lors de la réception d'un message de type tweet, le contenu sera extrait.
Le service de surveillance envoie le contenu extrait à Bear (cela nécessite que le service fonctionne sur Mac OS)
Donc avant de continuer, vous avez besoin des éléments suivants :
Bases de base de Python (écrire de petits scripts en Python est vraiment pratique)
Un Mac OS avec Bear installé
git clone https://github.com/howie6879/w2b
cd w2b
# 推荐使用pipenv 你也可以使用自己中意的环境构建方式
pipenv install --python=/Users/howie6879/anaconda3/envs/python36/bin/python3.6 --skip-lock
# 运行前需要填好配置文件
pipenv run python w2b/run.py
Tout d'abord, veuillez déterminer les constantes suivantes, comme mentionné lors de l'utilisation de WeChat pour synchroniser les articles avec Bear :
S_ACCOUNT_ID : WeChat envoie un identifiant de compte, qui peut être consulté sous Account/userinfo.data
R_ACCOUNT_ID : WeChat reçoit l'identifiant du compte, comme ci-dessus
RAW_KEY : clé de décryptage, qui est la chaîne de 64 bits introduite ci-dessus
DB_PATH_TEM : définit le chemin de la base de données du message, par exemple : "/Users/howie6879/Library/Containers/com.tencent.xinWeChat/Data/Library/Application Support/com.tencent.xinWeChat/2.0b4.0.9/{0}/Message /"
Le correspondant est la configuration dans w2b/config.py
:
import os
from w2b . utils . tools import gen_md5
class Config :
# 微信发送账户ID
S_ACCOUNT_ID = os . environ . get ( "S_ACCOUNT_ID" , "" )
# 微信接收账户ID
R_ACCOUNT_ID = os . environ . get ( "R_ACCOUNT_ID" , "" )
# 解密Key
RAW_KEY = os . environ . get ( "RAW_KEY" , "" )
# 消息DB路径
DB_PATH_TEM = "/Users/howie6879/Library/Containers/com.tencent.xinWeChat/Data/Library/Application Support/com.tencent.xinWeChat/2.0b4.0.9/{0}/Message/"
# 微信接收账户所有消息DB文件夹
MSG_DB_DIR = DB_PATH_TEM . format ( gen_md5 ( R_ACCOUNT_ID ))
# 与目标微信账户的聊天表
MSG_TABLE_NAME = f"Chat_ { gen_md5 ( S_ACCOUNT_ID ) } "
# 笔记Tag
BEAR_TAG = "资源/微信"
# 多久扫描一次,单位是S
INTERVAL = 10
Bienvenue pour soulever Issue
, j'espère que cela pourra vous aider ~