Skip to content
forked from cndiandian/weibo

订阅微博动态并同步到Telegram

License

Notifications You must be signed in to change notification settings

End-Satan/weibo

 
 

Repository files navigation

订阅微博并同步至Telegram

实现了什么功能?

订阅某个博主的微博,如果有发新微博、转发微博等动态,则及时将微博博文以及配图发送到指定的Telegram频道,并将配图保存到本地一份。

⚠️请注意:

  1. 微博博文中的表情包会被过滤掉
  2. 粉丝可见好友可见分组可见仅自己可见非公开微博无法被获取到

与微博的特别关注有什么区别?

除了可以第一时间收到更新通知外,还可以将博文以及配图保存下来,这样即便对方删掉微博或者配图被和谐,也还是可以看到原来的样子。

请勿用于不正当用途,本脚本初衷是为了追星、保存爱豆的博文配图的。

效果预览

👇这里应有一个gif图,如果加载不出来请点 这里查看

快速开始

目录:

目录介绍

├── README.md          使用说明,你当前看到的这个
├── config.ini         主要配置文件,需要修改这个
├── db                 数据库存放处,小白请勿改动
├── images             博文配图存放处
├── install.bat        Win系统安装依赖文件
├── requirements.txt   Python依赖
├── weibo.py           入口文件
├── win_run.bat        Win系统一键启动脚本(供小白用
├── win_test.bat       Win系统测试脚本(供小白用
├── lxml-4.5.2-cp39-cp39-win32.whl
└── lxml-4.5.2-cp39-cp39-win_amd64.whl

下载&安装

git clone https://github.com/cndiandian/weibo.git
cd weibo
pip install -r requirements.txt

配置

编辑修改config.ini,按需填写字段即可

如何创建bot & 获取token | 如何获取微博数字ID

必填 配置项 代表含义 示例
TELEGRAM_BOT_TOKEN 在Telegram申请的bot token 886947303:AAFGhtD3s5KDJ…
TELEGRAM_CHAT_ID 在Telegram创建的频道ID -1003769903788
WEIBO_ID 微博数字ID 758673838
× PROXY http代理 -

检查配置是否正确

配置完成后执行python weibo.py test测试是否配置正确,测试结果如下:

* 正在检查微博ID是否配置正确
【正确】当前设置的微博账户为:@私聊话题废

* 正在检查代理是否配置正确
【正确】代理配置正确,可正常访问

使用

执行python weibo.py即可完成一次查询

如何定时执行

  1. Linux系统配置: 执行crontab -e命令,添加如下内容保存退出即可

    * * * * * python3绝对路径 -u 项目文件绝对路径 >> 日志存放绝对路径 2>&1

    如:

    * * * * * /usr/bin/python3 -u /home/weibo/weibo.py >> /home/weibo/weibo.log 2>&1

  2. Windows系统配置: Windows系统直接打开同目录下的win_run.bat就可以定时执行了,每隔1分钟执行一次,如果想要加入到后台,请查阅windows 计划任务相关的资料,自行设置。

无经验小白从0开始配置

目录:

1. 下载Python

这里仅提供Win的安装方法,linux或mac用户默认你为高玩,可自行搜索安装方法🤪

2. 安装Python

打开上一步下载的安装包,按照如下图所示勾选好项目,点击安装等待安装完成即可

↓ 此处应有配图,若无法看到图片,请点此访问国内仓库地址

3. Telegram创建BOT & 获取token

  1. 私聊@BotFather 发送/newbot创建一个Telegram Bot
  2. 按照提示发送bot名字,名字中英文都可以
  3. 输入bot的唯一id,只能是数字、字母、下划线为组合,必须以bot结尾,如ZGlhbmRpYW4KbotZGlhbmRpYW4K_bot都可以
  4. 然后就可以获得到bot的token

4. Telegram创建频道 / 群组 & 添加bot

区别:频道类似公众号,只有管理员才可以发言;群组类似QQ群,所有加群人都可以一起发言; 选择自己喜欢的类型就可以,一般情况只是追星或者特意关注某个博主,建议选择创建频道;如果是一边关注博主动态,一边有和朋友们一起聊天,可以选择群组。

  1. 创建频道new Channel
  2. 设置频道头像以及名字Channel name,可以为中文
  3. 设置频道描述Description(optional)可以为空
  4. 设置频道类型,是公开Public Channel还是私密Private Channel,公开频道可以自定义链接,任何人都可以加入;私密频道无法自定义链接,只能通过生成的连接邀请加入
  5. 创建最后一步,会弹出邀请好友的提示Add Members,这里搜索刚刚创建的bot名字,选择后就可以添加到频道里,添加进来会问是否要设置成管理员,点击MAKE ADMIN,然后点SAVE即可完成

5. 获取微博数字ID

用电脑浏览器随意打开一条自己的微博,在地址栏 weibo.com后面的就是自己微博的数字ID

6. 获取Telegram频道数字ID

  1. 在已添加刚才创建bot的频道里at这个bot任意发送一条消息
  2. 访问:https://api.telegram.org/bot+刚才创建bot时申请的token+/getupdates
  3. 在访问结果里找到"chat":{"id":-1001385856968, "title":……},其中的-1001385856968就是当前频道的数字ID

7. 下载 & 使用

  1. 点击右上角绿色的↓Code按钮,选择Download ZIP
  2. 点右键解压下载的压缩包⚠️请勿直接双击打开
  3. 双击打开install.bat,会打开一个屏幕刷刷刷有一堆绿色的内容滚动,结束后关闭当前窗口,install.bat就可以删掉了
  4. 打开config.ini文件在里面填写好相关的内容
  5. 打开win_test.bat文件查看配置是否正确,如果不正确请重新调整配置
  6. 打开win_run.bat就可以开始运行了,稍后Telegram群组中就可以收到博文推送了

打赏

如果感觉对您有帮助,请作者喝杯咖啡吧,请注明您的名字或者昵称,方便作者咚咚咚🙇‍♂️

非强制打赏 非强制打赏(除咚咚咚外 打赏不会提供其他额外服务

微信 支付宝

About

订阅微博动态并同步到Telegram

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 94.9%
  • Batchfile 5.1%