superleeyom / blog

:bookmark: 个人博客仓库,用于记录一些幼稚的想法和脑残的瞬间,欢迎 star、watch,该仓库为个人博客,请不要提 issue ,该仓库后端参考了 @yihong0618 的 gitblog 项目,前端参考了@LoeiFy 的 Mirror 项目,感谢!
https://blog.leeyom.top
221 stars 20 forks source link

GitHub Actions 实战之监控梯子流量 #19

Open superleeyom opened 3 years ago

superleeyom commented 3 years ago

起因

最近也开通了 Netflix,Netflix 其实挺费流量的,为了防止梯子的流量超标,所以打算借助 Github Actions + telegram 做一个简单的监控,整体的思路其实很简单,没啥太大的难度,就是模拟梯子服务网站的登录,然后爬取页面的流量汇总数据,然后每天 9:30 将流量的使用情况发送到 telegram,同时如果可使用的流量少于 20% 的时候,推送报警到 telegram,代码目前放到了 github 上 proxy-traffic-monitor,实现细节就不讲了,代码比较简单,直接看代码就行。

开发环境

准备工作

  1. 创建一个 telegram bot 🤖,如果不会创建的话,参见 telegram 的官方文档:Creating a new bot,或者直接谷歌搜下,一大堆的教程,保存 telegram bottoken,这个很重要。

  2. 创建好机器人🤖后,接下来就是要获取聊天id,也就是 chatId

    • 打开你创建的机器人,随便发点啥,比如发个:hello world

    • 浏览器输入:https://api.telegram.org/bot(这里加上你的token)/getUpdates,会返回如下示例:

      {
      "ok": true,
      "result": {
        "message_id": 3,
        "from": {
          "id": 1432925625,
          "is_bot": true,
          "first_name": "SuperLeeyom",
          "username": "SuperLeeyomBot"
        },
        "chat": {
          "id": 599877436,
          "first_name": "Leeyom",
          "username": "super_leeyom",
          "type": "private"
        },
        "date": 1612000615,
        "text": "这是一条神奇的消息~"
      }
      }

      取到 chat 下面的 id ,这个就是聊天 id 了,比如我这里的就是 599877436

    • 然后打开浏览器,输入:https://api.telegram.org/bot(这里加上你的token)/sendMessage?chat_id=(你的chatId)&text=这是一条神奇的消息~,不出意外你应该能收到一条消息,注意一定要是代理情况下你才能收到,毕竟 telegram 在国内无法使用的。

  3. 准备MonoCloudByWave这两家的代理的账号和密码,目前我使用时这两家的服务,还行吧,价格比较贵,但是比较稳定吧。

如何使用

声明

本源码只用于学习和交流,禁止用于商业目的。

yaoyuanyy commented 1 year ago

telegram pc无法用手机号注册了,楼主是如何进行登录/注册的呢