Full Code of jackvale/rectg for AI

main 73ea7401ef74 cached
31 files
485.5 KB
178.3k tokens
65 symbols
1 requests
Download .txt
Showing preview only (502K chars total). Download the full file or copy to clipboard to get everything.
Repository: jackvale/rectg
Branch: main
Commit: 73ea7401ef74
Files: 31
Total size: 485.5 KB

Directory structure:
gitextract_9pt9jjdv/

├── .gitignore
├── LICENSE
├── README.md
├── package.json
├── requirements.txt
├── scripts/
│   ├── categorize.py
│   ├── crawl.py
│   ├── generate_readme.py
│   ├── parse_links.py
│   ├── refilter.py
│   └── scrape_tgnav.py
├── vercel.json
└── web/
    ├── .gitignore
    ├── README.md
    ├── astro.config.mjs
    ├── build-data.js
    ├── check-css.js
    ├── check.js
    ├── package.json
    ├── public/
    │   ├── data.json
    │   ├── manifest.json
    │   ├── robots.txt
    │   ├── sitemap.xml
    │   └── sw.js
    ├── src/
    │   ├── components/
    │   │   └── Card.astro
    │   ├── layouts/
    │   │   └── Layout.astro
    │   ├── pages/
    │   │   ├── index.astro
    │   │   └── p/
    │   │       └── [id].astro
    │   ├── scripts/
    │   │   └── main.js
    │   └── styles/
    │       └── style.css
    └── tsconfig.json

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitignore
================================================
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# IDEs and Editors
.vscode/
.idea/
*.swp
*.swo

# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg

# Virtual environments
.venv/
venv/
ENV/
env.bak/
venv.bak/

# Project Data
# Keep the sqlite DB, but ignore json crawled backups
data/*.json
data/*.bak
data/*.log


================================================
FILE: LICENSE
================================================
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright 2026 Jack Vale

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.


================================================
FILE: README.md
================================================
# rectg · Telegram 中文频道与群组精选

> **rectg** 持续收录高质量 Telegram 中文频道与群组,结合自动化抓取与人工整理,尽量剔除失效链接、低质内容与长期停更条目,帮助你更高效地发现值得关注的 TG 资源。
> 
> **免责声明**:本项目基于公开互联网信息整理,仅供技术学习、信息导航与研究参考使用。请使用者自行甄别内容,并严格遵守所在地法律法规;因使用相关内容产生的风险与责任,由使用者自行承担。

## 目录

<table>
  <tr>
    <th>频道</th>
    <th>群组</th>
  </tr>
  <tr>
    <td valign="top"><a href="#section-channel"><strong>频道</strong></a><br><a href="#section-channel-1">🆕 新发现频道</a><br><a href="#section-channel-2">📰 新闻快讯</a><br><a href="#section-channel-3">💻 数码科技</a><br><a href="#section-channel-4">👨‍💻 开发运维</a><br><a href="#section-channel-5">🔒 信息安全</a><br><a href="#section-channel-6">🧰 软件工具</a><br><a href="#section-channel-7">☁️ 网盘资源</a><br><a href="#section-channel-8">🎬 影视剧集</a><br><a href="#section-channel-9">🎵 音乐音频</a><br><a href="#section-channel-10">🎐 动漫次元</a><br><a href="#section-channel-11">🎮 游戏娱乐</a><br><a href="#section-channel-12">✈️ 科学上网</a><br><a href="#section-channel-13">🪙 加密货币</a><br><a href="#section-channel-14">📚 学习阅读</a><br><a href="#section-channel-15">🎨 创意设计</a><br><a href="#section-channel-16">📡 社媒搬运</a><br><a href="#section-channel-17">👗 生活消费</a><br><a href="#section-channel-18">💬 闲聊交友</a><br><a href="#section-channel-19">🔞 福利吃瓜</a><br><a href="#section-channel-20">🗂️ 综合导航</a><br><a href="#section-channel-21">🌐 综合其他</a></td>
    <td valign="top"><a href="#section-group"><strong>群组</strong></a><br><a href="#section-group-1">📰 新闻快讯</a><br><a href="#section-group-2">💻 数码科技</a><br><a href="#section-group-3">👨‍💻 开发运维</a><br><a href="#section-group-4">🔒 信息安全</a><br><a href="#section-group-5">🧰 软件工具</a><br><a href="#section-group-6">☁️ 网盘资源</a><br><a href="#section-group-7">🎬 影视剧集</a><br><a href="#section-group-8">🎵 音乐音频</a><br><a href="#section-group-9">🎐 动漫次元</a><br><a href="#section-group-10">🎮 游戏娱乐</a><br><a href="#section-group-11">✈️ 科学上网</a><br><a href="#section-group-12">🪙 加密货币</a><br><a href="#section-group-13">📚 学习阅读</a><br><a href="#section-group-14">🎨 创意设计</a><br><a href="#section-group-15">🏀 体育运动</a><br><a href="#section-group-16">👗 生活消费</a><br><a href="#section-group-17">🌍 地区社群</a><br><a href="#section-group-18">💬 闲聊交友</a><br><a href="#section-group-19">🔞 福利吃瓜</a><br><a href="#section-group-20">🗂️ 综合导航</a><br><a href="#section-group-21">🌐 综合其他</a></td>
  </tr>
</table>

<a id="section-channel"></a>
## 频道

<a id="section-channel-1"></a>
### 🆕 新发现频道

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 副业 | [直达](https://t.me/sidehustleus) | 114 | 关注副业赚钱、搞钱经验和独立开发 |
| 技术拾荒者 | [直达](https://t.me/tech_scavenger) | 56 | 分享优质技术文章、开源项目与实用工具 |
| 一个人的产品 | [直达](https://t.me/solo_product) | 32 | 独立开发者、产品设计与运营经验 |
| 深夜博客 | [直达](https://t.me/late_night_blog) | 23 | 深夜阅读文章、个人随笔与精神角落 |
| 什么值得看 | [直达](https://t.me/worth_read) | 42 | 推荐值得一读的好文章与好书 |
| 程序员日常 | [直达](https://t.me/dev_everyday) | 22 | 程序员的日常工作、吐槽与经验分享 |
| 小众软件 | [直达](https://t.me/niche_software) | 53 | 发现与分享好用、新奇的小众软件 |
| 酱酱の日报 | [直达](https://t.me/jiangdaily) | 148 | 每天不只是新闻,更是酱酱的发现日常~ 精选有趣、有料、有灵魂的「热饭」 |
| 财经速报 | [直达](https://t.me/econ_news_cn) | 44 | 最新最快的财经新闻与市场动态资讯 |
| AI 工具情报局 | [直达](https://t.me/AIGongJuQBJ) | 2 | 每天更新 AI 工具、软件应用、开源项目和效率产品动态,帮你更快发现真正有用的工具。 |

<a id="section-channel-2"></a>
### 📰 新闻快讯

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 竹新社 | [直达](https://t.me/tnews365) | 154,414 | 7×24不定时编译国内外媒体的即时新闻报道。 查阅新闻资料,前往竹新资料室: 如有任何问题,联系竹新社小编: 注:本频道原创新闻按照CC BY 4.0协议发布 |
| 风向旗参考快讯 | [直达](https://t.me/xhqcankao) | 143,596 | 风闻奏事,遍查访知。提供互联网科技新闻快讯。发布VPS、网盘等有价值虚拟资产的新闻和交易信息。 本频道谢绝任何政治频道转发消息,请勿让我们的评论区变成一个火药桶。... |
| 你不知道的内幕消息🅥 | [直达](https://t.me/inside1024) | 109,769 | 一些你不知道的内幕消息,最新资讯、大公司负面、时政财经、网友发布等高质量消息。 投稿/ 内容均来源社交媒体及公共平台,均不代表本频道观点,请酌情浏览 |
| 电报时报 | [直达](https://t.me/times001) | 90,825 | 投稿点频道左下角对话图标 |
| 华尔街见闻 - 财经时讯 AI 实时互动 | [直达](https://t.me/FinanceNewsDaily) | 48,462 | 中国领先的金融信息平台,7×24 覆盖全球股市、外汇、债券、商品动态。 频道特色 • AI 自动解读:每条新闻实时生成投资参考 • 智能问答:使用 /ask 命令深入了解任意资讯 • 秒级推... |
| Solidot | [直达](https://t.me/solidot) | 43,794 | solidot.org 非官方 RSS 推送频道。如有侵权,立即删除。 → Buy Ads: |
| 纽约时报 全文 实时推送 | [直达](https://t.me/niuyueshibao_rss) | 35,897 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| zaobao.sg 早报 | [直达](https://t.me/zaobaosg) | 33,846 | 以睿智亲和的内容,与你共谈天下事。 下载《联合早报》App: zaobao.com.sg/products |
| cnBeta.COM中文业界资讯站 | [直达](https://t.me/cnbeta_com) | 27,703 | cnBeta.COM中文业界资讯站是一个提供IT相关新闻资讯、技术文章和评论的观点的中文网站,报导立场公正中立,网友讨论气氛浓厚,在业界拥有独特的影响力。本频道为非。... |
| 不求甚解 | [直达](https://t.me/fakeye?boost) | 20,981 | 在这里分享我日常的所见所思。 by RSS 订阅: 镜像站: 博客(每日更新): 帮助频道助力: 别在评论里发表低智/政治倾向/杠精言论,会被拉黑(关注关系是双向的)。 本频道不接广告 |
| 荔枝木 | [直达](https://t.me/lychee_wood) | 17,701 | 这个世界很复杂,我尝试着去理解它。 生活不是程序,没有 Ctrl + Z。 由于水平有限,难免有错误和疏漏,请读者进行批评指正。 购物链接为 Aff Link,... |
| 知乎日报 全文 实时推送 | [直达](https://t.me/zhihuribao_rss) | 17,329 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 吴说区块链 新闻与深度 | [直达](https://t.me/wublock) | 17,059 | 吴说:接近真相,更可信赖 区块链新闻报道,深度内容分析 联系我们: 吴说全部渠道,欢迎下载 APP 收听播客: 此为吴说TG中文唯一,请小心电报诈骗,不给任何陌生人转账,小心熟人被盗号诈骗 |
| 云上报刊亭 精选 🅥 -- 新闻,报纸,杂志,电子书,资料 PDF | [直达](https://t.me/magazinesclubnew) | 16,191 | 有时间就搬运一些 请于下载后24小时内删除,如果喜欢杂志,请购买正 ! Please delete within 24 hours. If you like the magazine, pl... |
| 看新闻 学英语 双语新闻 | [直达](https://t.me/shuangyunews_rss) | 15,408 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 美国之音 全文 实时推送 | [直达](https://t.me/meiguozhiyin_rss) | 15,247 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 科技爱好者周刊 | [直达](https://t.me/scitech_fans) | 14,761 | 记录每周值得分享的科技内容,周五发布。本频道有ruanyf授权,see weekly/issues/885 |
| ChatGPT / AI新闻聚合 | [直达](https://t.me/AI_News_CN) | 13,560 | 主流AI服务状态页通知  /  汇集全网ChatGPT/AI新闻 #AI #ChatGPT 免费AI聊天 BEST AI中转 2.8折起 支持OpenAI, Claude code, Gemin... |
| 纽约时报双语新闻 | [直达](https://t.me/nyt_bilingual) | 11,332 | 《纽约时报》(英语:The New York Times,简写为NYT或NY Times),有时也被称为《时报》,是一份总部设在纽约的美国报纸,具有全球影响力和读者群。... |
| 经济信息联播 | [直达](https://t.me/eco_cn) | 10,833 | 独立,个性的财经、金融资讯早报,汇总美股、A股收市信息,以及提供具有重大影响力的研报 |
| ALL About RSS | [直达](https://t.me/aboutrss) | 10,214 | 关于 #RSS 技术的 #应用 #周边 #介绍 #方法 #教程 #指南 #讨论 #观点 #技巧 RSS = Really Simple Syndication / Rich Site Sum... |
| TestFlight News | [直达](https://t.me/testflights) | 9,882 | 收集分享IOS的TestFlight版申请地址与相关信息、注意事项。 有趣的互联网新闻 |
| 竹新资料库 | [直达](https://t.me/kt_database) | 9,536 | 分享新闻资料。 资讯,前往竹新社主站: 如有任何问题,联系竹新社小编 |
| 突发新闻 | [直达](https://t.me/breakingnews_t) | 9,053 | 突发新闻推送服务(简体中文) 非严肃版Channel: 深度报道 |
| 云上报刊亭 精选 🅥 -- 新闻,报纸,杂志,电子书,资料 PDF | [直达](https://t.me/magazinesclub) | 8,977 | 英文报刊杂志,电子书,报纸,外文杂志精选🅥 Newspaper, magazines and e-book collections 请于下载后24小时内删除,如果喜欢杂志,请购买正版!... |
| Readhub | [直达](https://t.me/readhub_cn) | 8,411 | 每天三分钟的科技新闻聚合阅读,内容主要包括商业动态、科技资讯,每天早 9 点推送当日早报。 → Buy Ads: → More: |
| 日本 共同网 朝日新闻 日经中文网 | [直达](https://t.me/jp_rss) | 8,360 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 层叠 - The Cascading | [直达](https://t.me/outvivid) | 8,298 | 主要话题大概是开源业界新闻。 所有以 #today 标签的内容均为本台编辑的个人意见,可能可以代表本台观点。... |
| 财经快讯 | [直达](https://t.me/fnnew) | 8,265 | 最新最全全球财经资讯24小时不间断直播,A股美股操盘必备,帮您第一时间掌握消息面的因素,把握大局、运筹帷幄、决胜千里 |
| 德国 德国之声 中文全文 | [直达](https://t.me/dw_rss) | 8,097 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| NS新闻转报 | [直达](https://t.me/SwitchNewCN) | 7,526 | 官方信息请看 |
| 小林家的托尔 | [直达](https://t.me/TooruchanNews) | 7,278 | 非资讯向的个人自媒体,发布内容和更新频率全看心情。 整合: 本频道独立运营,不属于“For Works”系列频道。... |
| FT中文网 全文 实时推送 | [直达](https://t.me/ftzhongwen_rss) | 7,186 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| RSS 频道收集 | [直达](https://t.me/rss_channels) | 7,109 | 收集推送 RSS 的频道,把 TG 变成 RSS 阅读器! 欢迎分享 RSS 源、频道! 联系频道管理员: 获取即时预览可发送原文链接给: 或 轻松搭建自己的 RSS 机器人: flower... |
| 俄罗斯 卫星通讯社 中文全文 | [直达](https://t.me/ru_rss) | 6,572 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| Yuan的记事本 分享 软件 新闻 Yuan's Notepad | [直达](https://t.me/Yuan_En) | 6,379 | 整理搬运一些奇奇怪怪有趣的事~ Organizing and carrying some strange and interesting things~ 会尽可能保留消息源出处(◔.̮◔) ... |
| 乙烷日报 | [直达](https://t.me/OverDaily) | 5,821 | 读者群 本频道文字内容以CC BY 4.0方式授权 |
| 韩国 中央日报 朝鲜日报 | [直达](https://t.me/korea_rss) | 5,106 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 法国 国际广播电台 中文全文 | [直达](https://t.me/rfi_rss) | 4,675 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| Python潮流周刊 | [直达](https://t.me/pythontrendingweekly) | 4,508 | 由豌豆花下猫主理,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,... |
| 币圈日报 | [直达](https://t.me/bidaily) | 4,372 | 币圈日报-每日最前沿的币圈新闻资讯 |
| &'a ::rynco::UntitledChannel | [直达](https://t.me/rynif) | 4,372 | 西郊林密无处去,北城雾沉晚风凉。 本频道是: - 推送任何有趣的东西的地方 - 偶尔可以看纸片小姐姐的地方 - 管理员随性吐槽的地方 本频道不是: - 客观的科技新闻频道 - 键政频道 转载... |
| 一起偷偷观察 DIYgod | [直达](https://t.me/awesomeDIYgod) | 4,258 | 频道由 RSSHub 强力驱动,频道目录: #DIYgod的Twitter更新 #DIYgod的博客更新 #DIYgod喜欢的网易云音乐 #DIYgod的豆瓣动态 #DIYgod的bilib... |
| 币圈快讯 | [直达](https://t.me/btcnewsdaily) | 3,913 | 币圈快讯,掌握币圈动态 |
| 7x24投资快讯 | [直达](https://t.me/golden_wind_news) | 3,434 | 24 小时投资相关的快讯 |
| 南方周末 / Southern Weekly | [直达](https://t.me/infzm) | 3,225 | 在这里,读懂中国 一个简单的南方周末推送频道,由 weVoice 建立。 欢迎的主频道 ,一个独立自由的青少年民主派新闻媒体。 互吹: |
| 澳大利亚 广播公司 中文全文 | [直达](https://t.me/abc_rss) | 3,132 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 今日份的豆酱 | [直达](https://t.me/today_bean) | 2,796 | ¯\_(ツ)_/¯爱看不看,我啥都瞎鸡儿发 个人频道,不是沙雕图频道,只是我自己看到了觉得好玩的会顺便发 观点不同,智商不够,有错就改 评论区禁止键政,禁止侮辱性发言 发新闻不一定经过证实,... |
| 全球主流新闻媒体中文速览 | [直达](https://t.me/allzhnews) | 2,781 | 路透中文Investing.com纽约时报美国之音FT中文BBC法广德国之声澳大利亚广播公司俄罗斯卫星通讯社联合早报朝鲜日报中央日报共同网朝日新闻日经中文网半岛电视台苹果日报中央社FT一周排... |
| 开发者日报 | [直达](https://t.me/cndevdaily) | 1,952 | 一个勤劳的机器人,只爬取热门,优质,阅读性强的内容。懒懒的主人创造了我,欢迎关注我。我的 Twitter 账号是 CNDevDaily。官网 |
| 悦读「优质少量RSS聚合」 | [直达](https://t.me/dailyrss) | 1,629 | 文章、图片、视频、音乐、播客RSS订阅聚合频道 部分支持「Tg即时预览/内嵌播放」 订阅内容主要类型为IT、科技类文章、减压向图片音频等 子频道: 物种日历 吃货研究所 友链频道: 资源分享 |
| 电报新闻 | [直达](https://t.me/chinesenewss) | 1,284 | 本频道旨在中文类新闻聚合阅读,由于订阅的新闻来源较多,建议关闭频道的消息通知,闲时看一看频道获取一下资讯即可 |
| 辣鸡咕鸽毁我信仰 #CurryMyLife | [直达](https://t.me/googleshit) | 1,216 | 今天份的 Google 药丸。 话题包含但不限于最近由阿三统治的 Alphabet, Inc. 及其子公司/部门产品,以及相关新闻。 投稿: - - - 放送事故提醒: 已加入 频道消息汇总 |

<a id="section-channel-3"></a>
### 💻 数码科技

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 科技圈在花频道 | [直达](https://t.me/TestFlightCN) | 204,739 | 大家多多分享 • 禁止推广/黑产/刷屏/色情/ NSFW • 禁止黄赌毒/宗教/政治/键政 • 禁止撕逼/人身攻击/阴阳怪气 群聊: 广告合作: 侵权/解封/帮助: |
| 油油の科技软件资源分享 | [直达](https://t.me/youyousharechannel) | 80,434 | 专注于Windows、Mac OS、Linux、Android、iPhone、iPad、TV、影-视、福利、磁-力、软-件、插件、脚-本、-破-解、教程、-音.乐等资源分享 X订阅 群组 私信 |
| Duyao SpeedTest 科技生活 资讯转发 | [直达](https://t.me/DuyaoSS) | 70,885 | 不定期发布或转发一些资讯 测速不代表推荐,经过长期测速,多次测速,可以慢慢筛选出一些更好的,以及淘汰掉一些总是不太好的… 由于大陆地区网络环境十分复杂,不同地区,... |
| 极客分享 | [直达](https://t.me/geekshare) | 69,772 | 专注分享各种高质量网站、工具、APP、开源项目等一切好玩的东西,以及偶尔开开车 内容索引 加入话题 广告合作 网站 |
| 每日消费电子观察 | [直达](https://t.me/CE_Observe) | 65,230 | 因广告机器人出没,评论区禁止使用频道身份发言,发送垃圾信息可能会被bot封禁。如果你想匿名、被误封或是在海外生活,... |
| Yummy | [直达](https://t.me/GodlyNews1) | 62,351 | 本频道不定期推送科技数码类新资讯,欢迎关注! 发布的内容不代表本频道立场,和你意见不一样的话欢迎在评论区留言表达,但请注意言辞,面斥不雅。 关联群组定期清理不活跃成员和僵尸号,误封请员。... |
| 开源社区 | [直达](https://t.me/opencfdchannel) | 57,814 | Android/Linux/Windows/macOS/iOS *科技人文资讯 组 投稿请私信 Discord Server: |
| Shadowrocket News | [直达](https://t.me/ShadowrocketNews) | 44,771 | Shadowrocket 只有iOS/iPadOS/tvOS 版本. 讨论群组: App Store下载链接: |
|  Apple Nuts | [直达](https://t.me/AppleNuts) | 36,103 | 一个特别的 Apple 频道 Let’s Think Different. 讨论组 |
| LIHAI 分享 | [直达](https://t.me/lihaiba) | 35,430 | 一个分享频道,进频道先看置顶,不定时不定量更新,希望推送内容对你能有帮助 有问题或投稿找资源私聊 bot 助力: LIHAI的收藏夹 GitHub的存档 优质网盘资源分享存档 转载原档请注明... |
| 少数派sspai | [直达](https://t.me/sspai) | 34,723 | 少数派 (sspai.com) 。Weibo: ,公众号:sspaime |
| 科技&趣闻&杂记 | [直达](https://t.me/kejiqu) | 34,266 | 分享有价值、有趣的信息! 你也可以来投稿,包括但不限于科技新闻、知识、影视娱乐资讯.... 投稿 群组 合作联络 |
| 老毛子Padavan固件发布 | [直达](https://t.me/pdcn1) | 33,771 | 老毛子Padavan固件自助 老毛子Padavan固件IOS自助 老毛子Padavan固件发布 |
| 𝗧𝗚𝗴𝗲𝗲𝗸 TG极客 | [直达](https://t.me/TGgeek) | 32,706 | This channel is no longer maintained. 2019.01.13 - 2022.11.12 |
| AI探索指南 | [直达](https://t.me/aigc1024) | 31,313 | 关于AIGC人工智能、思维方式、知识拓展,能力提升等。投稿/ |
| 上班划水之无聊图 | [直达](https://t.me/goworkbitch) | 25,838 | 活干完了吗?还在玩手机! 注意:本频道讨论群仅用作评论区,不接受任何人加群,尝试加群会立刻被踢。若误点加入被踢且无法访问评论区,需稍等一会儿即自动解封。 另外,本频道主只有一个人,... |
| 𝚂𝚙𝚎𝚎𝚍𝙲𝚎𝚗𝚝𝚛𝚎 | [直达](https://t.me/speedcentre) | 24,229 | 二手机场交易 欢迎各位关注 ! 送测请私聊 这里是一个服务型的综合跨境服务提供商测试平台,为各大服务提供商提供包括国内大带宽家庭宽带测试,流媒体解锁情况测试,... |
| Clash for Windows 汉化公告板 | [直达](https://t.me/ClashR_for_Windows_Channel) | 21,015 | 讨论组: Clash汉化补丁项目地址: GitHub加速下载服务: GitHub汉化工具项目地址 |
| 科技圈的日常 | [直达](https://t.me/misakatech) | 18,922 | 科技圈内的大事小事 吹水群: |
| Flippy_Openwrt | [直达](https://t.me/openwrt_flippy) | 16,507 | Flippy的Openwrt/Armbian固件 进群链接: 有事进群问,别在帖子下面的讨论组里问,不然群里别人的回复你是看不见的 |
| zrj766的频道 | [直达](https://t.me/zrj96) | 15,236 | 特别感谢:感谢NodeSupport和YxVM 对本频道的赞助和支持。 · 个人小店: · 兴趣杂食向频道,有时候会当朋友圈用,不喜勿喷,友善交流; · 主要内容:数码硬件,VPS/独服,... |
| ChatGPT 精选 | [直达](https://t.me/AwesomeChatGPT) | 13,447 | ChatGPT 精选资源 |
| 〄FW | [直达](https://t.me/JISFW) | 12,946 | For Work 系列频道 梗频道: 图频道: 读频道: 妹频道: AI频道: 投稿·反馈·吹水群: 附属 Bot 贴纸包 Bot: 王境泽 Bot: Yaplus Bot: etc... ... |
| 那些好看的Tg主题 | [直达](https://t.me/beautifultgtheme) | 12,616 | 分享一些好看的Telegram主题 大部分是Android,官方 如果你需要TgX、IOS、或PC桌面版的主题,请联系我,我尽量做 友情链接: 其他业务开展了 |
| LetITFly News | [直达](https://t.me/LetITFlyW) | 9,772 | 的频道,主题包括但不限于 Android、Windows、Web、消费电子相关,吹水为主。 愿各位始终享有足够的信息渠道,在心情好有意愿的时候能够做想做的事情。... |
| 此岸情报局 | [直达](https://t.me/JustReformation) | 7,817 | 资源情报资讯更新板! 羊毛、好物、聊天、VIP、软件、Apple、淘宝、京东、福利、App、iOS、老司机、破解、小说、搞笑、资源、视频、中文、Google!源于网络,分享世界! 合作频道 |
| MacApp分享频道 | [直达](https://t.me/macapp_channel) | 7,711 | 官网: 官方: 各位有任何问题或者其他软件需求,欢迎通过官方: 或者在网站上提交工单进行反馈,感谢各位的支持 |
| 时间的切片 | [直达](https://t.me/mactalk) | 7,376 | You can view and join right away. |
| 黑科技TG代理TG破解版推特破解破解软件 | [直达](https://t.me/iPoject) | 5,885 | Telegram,Twitter,Facebook 定制版,关注本频道不迷路噢! 开源交流,黑科技交流,安卓逆向 关注群组 |
| 今天abc看了啥 | [直达](https://t.me/abcthoughts) | 5,655 | 现在我也不知道这频道发了啥了,各位慢慢吃瓜,将就着看 联系我请去 友链儿 |
| AIM扩散力场 | [直达](https://t.me/nekosc) | 3,761 | 本频道会不定时推送一些段子、ACG、科技、时事资讯等内容 闲聊&报错&申诉: 关联频道: |
| Milkice's 我是高仿号我根本不懂中文 | [直达](https://t.me/milkice_portal) | 2,923 | 个人频道 音游 / 科技 / 日常 除重大事件外尽量不转发其他频道之消息 |
| Tesla特斯拉 AI & FSD News | [直达](https://t.me/Tesla_share) | 2,849 | 追踪物理世界的人工智能进化。 Tesla:FSD 更新、Robotaxi、交付动态 AI:Optimus 机器人、Dojo 算力、xAI 联动 Future:能源、星链及改变世界的硬核科技 ... |
| moke 的 日常分享、吐槽和动态 | [直达](https://t.me/mokeyjay_channel) | 2,679 | 超能小紫( mok.moe ) 的日常分享、吐槽和动态。以IT科技和日常见闻为主,欢迎关注 插画收藏夹 R18插画收藏夹 照片收藏夹 甜品日记 本频道钦定扯蛋闲聊吐槽群 |
| 蛋挞观察室 | [直达](https://t.me/ijustseesee) | 2,657 | 频道主 投食 ___________ TGCN推荐频道 荔枝木 灵车漂移 沙雕图 AIM扩散立场 不存在的世界 |

<a id="section-channel-4"></a>
### 👨‍💻 开发运维

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Legado 开源阅读 频道 | [直达](https://t.me/Legado_Channels) | 94,438 | 频道内发布小说推文、阅读APK、书源、主题排版及部分阅读重要通知等。 - 频道导航: 入群须知: - 建于 2020/10/15 |
| VPS信号旗播报 | [直达](https://t.me/vps_xhq) | 40,501 | VPS新闻频道,VPS信号旗是即时发布简要讯息的小组织,关注VPS和通信自由。为你甄选最具价值的信息,提供业界热点新闻调查。 讨论群组: 评论规则: 投稿交谈 |
| 互联网从业者充电站 | [直达](https://t.me/https1024) | 26,315 | 互联网从业者专属 内容多为技术、产品、设计、运营等不同话题内容; 目标人群为程序员、设计师、产品经理、运营管理等不同职能。 投稿/ 内容来源网络 |
| ACL4SSR | [直达](https://t.me/ACL4SSR) | 25,365 | 打开支付宝首页搜"711629184"领红包,领到大红包的小伙伴赶紧使用哦! 群组只是为了启用评论功能而设置的,所以请不要加入。如需评论,... |
| Project X Channel | [直达](https://t.me/projectXtls) | 23,978 | Donation: 中文群组: Русский: Persian: GitHub: |
| 如有乐享 | [直达](https://t.me/ruyoblog) | 23,677 | 主要更新如有乐享博客内容,以及其他几个朋友的频道干货。偏云服务器,优惠活动,羊毛信息,以及各种BUG。 群组: 博客: 社区: 频道评论区拒绝一切阴阳怪气!谢谢 |
| Cool Scripts | [直达](https://t.me/cool_scripts) | 16,685 | QuanX, Loon, Surge, JsBox, Pythonista, Scriptable, Shortcuts等脚本分享 |
| mini | [直达](https://t.me/Orzmini) | 15,750 | 讨论群组 项目地址 mini计划-收录,整理,制作图标,调整为适合网络调试软件调用的样式和格式(目前已支持Quantumult X、Loon、Pharos Pro及BoxJS) |
| 靠谱VPS推荐(默认带aff) - VPS仓/古博 | [直达](https://t.me/vpscang) | 11,474 | VPS推荐, VPS仓补货等信息. 默认所有信息都带aff == 网站: VPS推荐: www.gubo.org VPS大全: www.vpscang.com VPS信息(自行甄别): of... |
| Arch Linux Chinese Messages | [直达](https://t.me/archlinuxcn) | 10,870 | Arch Linux 中文相关信息 跟进 Arch Linux 日常踩坑预警,翻译官方新闻, testing 测试预警等。另有 提供滚动打包记录。... |
| 大虾的编程资源库/码农/程序员资源 | [直达](https://t.me/programmingsrchub) | 8,887 | 简介:大虾本职工作为程序员,本频道持续分享大虾的编程资源库/码农/程序员资源。 有啥问题可以群里问,求书的可以代找,因为时间有限,每天仅前3个。 加群、业务对接: |
| 编程随想推荐书籍(非官方)#声援编程随想 | [直达](https://t.me/programthinkbooks) | 6,251 | 惊闻随想君被捕,作为深爱他的文章的众读者之一,感到无比震惊和惋惜。本频道会加紧整理他的Resillio Sync内容,并做好备份。 编程随想的灯不会灭,每个人都是自由火炬的传递者!... |
| Cloudflare 在中国频道 | [直达](https://t.me/Cloudflare_CN) | 5,363 | Cloudflare 在中国群组的消息发布频道 发布:有关Cloudflare的周边消息,站长、开发者相关资源/资讯,互联网周边大小事件,... |
| MATLAB TIPS | [直达](https://t.me/MATLAB_tips) | 2,840 | Matlab的一些现成脚本、函数,前人写的技巧、教程、文档。 Just tricks that finally work or what have learnt through search... |

<a id="section-channel-5"></a>
### 🔒 信息安全

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 信息安全技术频道 | [直达](https://t.me/tg_InternetSecurity) | 11,898 | You can view and join right away. |
| AdGuard消息 | [直达](https://t.me/AdGuardcn) | 2,390 | 这里可以收到所有关于广告拦截和网络安全的消息。 AdGuard官方群 |
| 行动派公民联盟 | [直达](https://t.me/citizen_united) | 1,436 | 让我们用行动支持民主,自由,平等。 分享行动派信息,如:投票,捐款,搭建/使用VPN,个人信息安全。建立互相支援的公民网络。 关键词:行动派,公民,联盟,民主,自由,平等,权利,投票,捐款,... |

<a id="section-channel-6"></a>
### 🧰 软件工具

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| APP喵-软件资源共享 | [直达](https://t.me/appmew) | 182,221 | 发现分享好用 APP 软件,优质 资源,限免,游戏,网站,极客,教程,各种 网络 黑科技,节点,免费VPN,影视 等 关注我,喵! 群聊: 广告 |
| Nekogram APKs | [直达](https://t.me/NekogramAPKs) | 44,335 | The official APKs channel for Nekogram. News: Discussion: Чат: 讨论: Test APKs: nekogram.app/download |
| APPDO 数字生活指南 | [直达](https://t.me/appdodo) | 39,563 | 互联网/数码/App/羊毛/相机/数字指南 商务 (唯一,谨防诈骗) 独立网站:appdo.xyz 博客 song.al 浮生东京 Buy ads: |
| APPDO 数字生活指南 | [直达](https://t.me/AppDoDo) | 39,559 | 互联网/数码/App/羊毛/相机/数字指南 商务 (唯一,谨防诈骗) 独立网站:appdo.xyz 博客 song.al 浮生东京 Buy ads: |
| Iyouport | [直达](https://t.me/iyouport) | 30,282 | iYouPort(iyp) Ⓐ Foundation IYP已开启新项目 iYouPort - Initiatives & Tactics 本项目是一个资源库,是由一系列站点组成的网络;... |
| 财联社VIP文章分享 | [直达](https://t.me/clsvip) | 30,172 | 财联社 VIP文章即时更新:盘中宝、风口研报、狙击龙虎榜、电报解读、财联社早知道、研选、公告早知道、九点特供: 频道始建于2022年2月28日 股票组: 合作请 |
| 乱七八糟的储物箱 | [直达](https://t.me/xyxyspace) | 29,091 | 本频道仅作为本人研究备份使用,所有内容下载后请于24小时内删除,请不要搬运到酷安、App分享、奇妙应用、葫芦侠等各类平台 |
| Appinn Feed 小众软件 | [直达](https://t.me/appinnfeed) | 28,061 | 这里有小众软件和发现频道的内容更新,以及一个绑定的私有群组。 吹水群: RSS 订阅地址: 发现频道 在这个频道发布广告(Buy ads on this channel): |
| 赚客吧 有奖一起赚 | [直达](https://t.me/zuanke8) | 23,483 | 全网电商平台,优惠促销打折海淘BUG价活动线报,各大支付APP支付活动折扣及时推送,京东、苏宁、淘宝、天猫、国美,你能想到的这里都有,火速入伙 |
| Price Tag | [直达](https://t.me/appfans) | 16,822 | 推荐 App 限免降价,推送好物好券 公众号:PriceTag发现好应用 微博:PriceTag 应用推荐 Twitter: TG : 微信:关注公众号回复「加群」自动加入 |
| 推特翻译 | [直达](https://t.me/twitter_translate) | 12,255 | 近来有很多朋友来问询转发相关事宜,这边再次统一回复:都可以转发。 如果跨平台转发不方便注明来源的,不注明来源也可以。如果需要做修改的,做修改也可以。 感谢所有转发这边的帖子至其它平台,... |
| R探长 | [直达](https://t.me/agentONE_R) | 10,894 | 目前发布一些关于各种云服务操作的程序和脚本 |
| Apps推荐&抽奖&活动 | [直达](https://t.me/AppsSweepstakesNews) | 9,032 | 推送不限于Apps抽奖活动相关资讯,欢迎转发! 如打扰请关闭通知 抽奖请关注: 正月十五关门 |
| 简悦 - SimpRead | [直达](https://t.me/simpread) | 6,055 | 简悦的发布通道,简悦 - 让你瞬间进入沉浸式阅读的 Chrome 扩展,还原阅读的本质,提升你的阅读体验。地址 讨论群地址 |
| Fragment Monitor | [直达](https://t.me/Fragment_Monitor) | 5,639 | Fragment Monitor is a Fragment event notification channel that sends notifications to the Fragm... |
| Immersive Translate | [直达](https://t.me/immersivetranslate) | 5,611 | 沉浸式翻译频道, 加群链接 |
| AppPie | [直达](https://t.me/AppPie) | 3,359 | 网站 apppie.com AppPie!我们热衷于探索 Apple 世界的最新变化,并为你筛选出能真正提升体验的高品质应用。 关联群组: |
| GBox 官方频道 | [直达](https://t.me/GBoxTGC) | 2,751 | GBox是一款免越狱可给app签名安装的工具,具有ipa补签、ipa安装下载、视频下载等功能 (几G的大文件也支持不误) 功能介绍: 讨论组: |

<a id="section-channel-7"></a>
### ☁️ 网盘资源

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 阿里云盘发布频道 | [直达](https://t.me/shareAliyun) | 224,500 | 和谐、友爱的阿里云盘分享交流频道,每个人在这里都可以分享自己想分享的资源。 禁止GHS 流量卡: 影子频道: 资源: 网盘资源收藏: 科技趣闻杂记: 备份频道 |
| Google Drive 资源 New @gdurl | [直达](https://t.me/gdsharing) | 127,316 | 很高兴你来到新的 频道。这里有各种 Google Drive 资源,包括大电影,小电影,电子书,无损音乐等。... |
| Widget软件工具资源分享 | [直达](https://t.me/WidgetChannel) | 80,052 | 每日推送有用有趣的内容,包括但不限于:软件 工具 网站 科技新闻。 合作/反馈 群组 |
| 飞鱼资源分享 冲浪指南 软件工具 | [直达](https://t.me/feiyu123) | 55,890 | 分享一些工具,软件,浏览器插件脚本,网站,歌曲,互联网相关资讯,开源项目,碎碎念的想法 等等。 投稿互推合作机器人 |
| Alist资源频道 | [直达](https://t.me/alistshare) | 23,427 | 收集推荐网盘资源站点(不局限于alist哦) Alist官方交流: Alist官方网站 |
| PT资讯频道 | [直达](https://t.me/privatetrackernews) | 20,115 | PT开放注册信息推送 Open Trackers News Open Signup Trackers PT资讯推送 Private Tracker News PT相关电报Telegram频道... |
| TGBot News | [直达](https://t.me/Hao12News) | 18,785 | ● 记录 最新消息 会员专属版: ● 反馈群: ● 管理员: 抽奖频道 : 帮助网站 |
| 飞享一刻 频道 | [直达](https://t.me/w37fhy) | 14,372 | 【加入讨论群 |

<a id="section-channel-8"></a>
### 🎬 影视剧集

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 阿里、夸克、百度网盘4K影视资源 | [直达](https://t.me/Aliyun_4K_Movies) | 210,731 | 欢迎你来到4K影视频道,频道管理都是影视爱好者,主要分享以4K画质为主的电影、电视剧、纪录片、动画等影视资源。当然也有其他画质资源:如1080P、720P的稀缺资源 |
| 4K影视屋(分屋)-蓝光无损电影 | [直达](https://t.me/dianying4K) | 80,660 | 广告建议 |
| ASMR CHAOS 视转音 瞎逛 正经 | [直达](https://t.me/asmrforme) | 57,875 | 广告合作请找 不要跑评论区刷屏引流影响交流哦 |
| 懒狗集中营-115/阿里/百度/迅雷/夸克 影视分享 阿里云盘百度网盘115网盘 | [直达](https://t.me/vip115hot) | 43,363 | 建议 / 投稿 / 广告 / 合作 |
| Zapro Notice | [直达](https://t.me/zaproshare) | 31,423 | 软件  /  电影  /  纪录片 欢迎加入讨论群组 |
| Emby影视资源发布 | [直达](https://t.me/Plus_Movie_Best) | 30,096 | 普拉斯影业资源发布频道 |
| BBC中文 全文 实时推送 | [直达](https://t.me/bbczhongwen_rss) | 25,907 | 知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群 |
| 纪录片爱好者 | [直达](https://t.me/jlpahz) | 19,534 | 《纪录片爱好者》是一个专注分享高清纪录片的频道,我们将为您提供BBC、国家地理频道、Discovery、NHK、探索频道等大量高清纪录片的在线观看或下载。并且让你大大降低观看、下载的成本。... |
| 國家地理雜誌 中文版 | [直达](https://t.me/natgeomedia) | 15,050 | Hi 探險家,和國家地理一起探索世界吧! 國家地理雜誌官網 Facebook Instagram Youtube |
| 网盘(高品质)影视 | [直达](https://t.me/alyp_1) | 11,792 | 频道发布一些电影、剧集、动画和纪录片 |
| Hell Cell 功能教学 | [直达](https://t.me/HellCellZC123) | 11,432 | YouTube视频教学频道 商务联系 通过视频演示,讲解一些实用软件有用有趣的功能。 博主YouTube: 博主: 大家可以订阅一下,衷心感谢!撒花 |
| 新蛤社 | [直达](https://t.me/XinHaNewsAgency) | 8,641 | 本频道所发布的部分内容不代表本社立场 新蛤社,让世界听到江学的声音! 已列入特级碾刑民单 不经商 每日以香港记者的速度更新 Twitter/YouTube:新蛤社 频道图片投稿请Twitte... |
| 人人影视字幕文件 | [直达](https://t.me/yyets_subtitles) | 7,581 | 片源可在在 rarbg.to 搜索下载。推荐使用 qBittorrent作为下载工具。可在 GitHub 搜索 trackers 并添加到软件,可提高下载速度。... |
| Blu-ray Project 蓝光视频工程 | [直达](https://t.me/beyondHD) | 5,644 | No HDTV,No WEB-DL,No TC,Love Bluray。共享带字幕或者国语的1080p及以上的视频,转载时注重压制以及diy的质量。所有资源不设置门槛 |
| 为也行 | [直达](https://t.me/weiyexing) | 5,265 | 为所欲为也可行,人文与科技反复横跳 你失去公开表达的能力和意愿了吗? 没有 据不完全统计,频道内容主要为: 40%:书籍  /  电影  /  数码  /  产品 30%:热点事件  /  文章存档 20%... |
| 看番吧!Anime!动漫音乐日剧!高速在线播放! | [直达](https://t.me/kanfanba) | 4,592 | アニメーション業界の今が、ここにある |
| 啰哩啰嗦分享频道 | [直达](https://t.me/notonlyshare) | 4,058 | 一个克制的、理性的关注互联网科技和人文的频道,也谈谈美食和电影,发现和分享一切有趣有价值的内容 |
| 美剧←→blahblah (& etc.) | [直达](https://t.me/mytvseries) | 1,875 | 美剧←→blahblah |
| 纪录片自留地 | [直达](https://t.me/litterpanda) | 1,245 | 随意发发,随便看看,不定时更 |

<a id="section-channel-9"></a>
### 🎵 音乐音频

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| AI绘画 AI视频 AI音乐 | [直达](https://t.me/AI_Pintura) | 35,356 | 分享AI绘画、AI视频相关资源与技巧。同时也会分享图像处理与视频处理相关的资源与技巧 |
| 精选音乐收藏馆 | [直达](https://t.me/qing_03) | 15,511 | 精选音乐收藏馆 联系 |
| 精选中文播客 | [直达](https://t.me/chinapodcast) | 14,719 | 本频道实时推送热门播客节目,推送较频繁请mute。 点击订阅按钮(然后点Start按钮),可以让机器人单独推送该播客节目。 标题带播客来源链接。点击播客名字可以进行搜索。 节目相关讨论及问题请到 |
| 有故事的女同学 | [直达](https://t.me/WenAnGuan_botjihuo) | 11,234 | 网易云热评 欢迎加入云村 你往往喜欢的不是文案 一眼就喜欢的文案 从来都是感同身受 好的文案千篇一律 有趣的文案万里挑一 总有一句治愈系 能够说到你的心坎里 如有打扰请关闭消息通知 群组 文案投稿商务 |
| 维生素E 经济学哲学知识分享播客 | [直达](https://t.me/vitamineEpodcast) | 9,139 | 精神分析漫步学派(The casualistic school of psychoanalysis) 生命需要维生素e! 维生素e是一款完全免费的知识分享播客计划,我们分享构成这个世界,... |
| 音乐世界 | [直达](https://t.me/lumingguandj) | 7,978 | 私享 丝响 思与想 温柔被我唱成了歌 伴你人山人海不停留 频道 |
| 音乐收藏 | [直达](https://t.me/flac_file) | 7,629 | 无损音乐收藏频道 音乐不定时更新 |
| 小破不入渠 | [直达](https://t.me/forwardlikehell) | 7,305 | 無理の囈語。 原创天国: twitter.com/Jesoooor 垃圾堆: 欢迎访问「大破进击」博客: jesor.me 欢迎收听「交差点」播客: jiaocha.io A small p... |
| 知音 | [直达](https://t.me/Musiccnchannel) | 5,881 | 发一些关于音乐的东西 |
| 咕 Billchen 咕 抹茶芭菲批发中心 | [直达](https://t.me/billchenla) | 2,912 | Gugugu Peing 歌单 Gugu channel: |
| 音乐库 | [直达](https://t.me/MusicSharePlatform) | 2,386 | 组 |
| o1xhack 远上天台 | [直达](https://t.me/o1xinsight) | 2,079 | 群组 ② MID TIME 半时光 个人频道私密暂时不对外开放 前亚麻 SDE 观点仅代表个人 iOS 开发者 思想 科技 生活 题材不限 都为精华 置顶: 主理人 博客 o1xhack.c... |
| 每日一歌 | [直达](https://t.me/dailymusich) | 1,904 | 无论乐曲也好,旋律也罢,都是人们情感的体现。 人们把他们珍重的情感用乐器表现出来,用音乐的方式记录下来,供后人体会和欣赏。 而我们要做的,就是将这些情感分享给大家,快乐也好,悲伤也罢,... |
| Classical Music | [直达](https://t.me/exploreclassical) | 1,824 | 一起来听古典音乐吧~~ |
| Pop Music History Trip | [直达](https://t.me/popmusichistory) | 1,727 | 挖掘重要又有趣的流行音乐史,注重系统性也强调个人体验~ 现在按艺人推荐模式 过去的按年代推荐可通过pinned message跳至2021查看~ 之前的介绍:我喜爱音乐的系统性推荐~ 存档在... |
| 浅影随想 | [直达](https://t.me/lightFantasy) | 1,522 | 如果,破碎是玻璃的必然结局,那么一块灵魂要多坚强才不会受伤? 一个计科研究生的日常杂想随记。 一些日常的碎碎念、一些心情记录以及杂想。 一些音乐和资源推荐。... |
| 老梁的音频 搬运 | [直达](https://t.me/Laoliang666) | 1,014 | 搬运一些老梁的节目,希望大家听的开心。 Telegram中文设置: 搜群机器人: 公益TG代理: |

<a id="section-channel-10"></a>
### 🎐 动漫次元

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| ZBook, 电子书 小说 漫画资源 禁书分享 | [直达](https://t.me/ziyuanfeng59) | 101,066 | 版权归原作者所有,如有侵权请告知删除 。若要转发频道资源请注明出处,谢谢大家 招商 解封 找书 任何想法和问题联系群 |
| Galgame 频道 | [直达](https://t.me/Galgamer_Channel) | 54,276 | Galgame 资讯和推荐 你→ →马猴烧酒 友链: 文章: 捐赠: 有关捐赠事宜请 |
| SomeACG 每日少女壁纸 | [直达](https://t.me/SomeACG) | 33,033 | 请问今天要来一张壁纸吗?这里是全TG质量最高的ACG壁纸频道!欢迎订阅! 平时会发一些自己精心挑选的壁纸,大多数来自Pixiv,主要以PC壁纸为主,每天(佛系)更新,... |
| Telegram数字图书馆 | [直达](https://t.me/TG_book_data) | 31,733 | 电子书/免费/资源/书库/漫画/资料/文献 ——————————————— 管理员联系方式 |
| 计算机类书籍 | [直达](https://t.me/bookusefor3) | 29,480 | 收集偏计算机专业化的书籍 系列频道 漫画书籍资源整合 普通休闲书籍资源 计算机与部分其他种类书籍资源 计算机类书籍 目录频道 机械工业出版社黑皮书 众筹电子书 计算机相关书籍 图灵书籍 81... |
| 「 彼岸情报!」薅羊毛情报(网站/资源/软件/限免APP)见闻社 | [直达](https://t.me/BaccanoSoul) | 23,702 | 互联网优质羊毛资源共享集社!期待各位加入! 广告/互推/合作联系: 全平台app限免/内测推送!限免游戏喜加一、资源网站分享,免费领,kn95口罩!... |
| 爷青回动画分享频道 | [直达](https://t.me/yeqingjie_GJG666) | 21,411 | 小时候的回忆,永远会存留在脑海里的一小片土地,而我想做的,就是带大家去寻找这块儿熟悉又陌生的福邸 爷青回动画分享频道: 爷青结动画组: 频道资源搜索机器人: 频道投稿机器人: 频道指定合作论坛 |
| 计算机与部分其他种类书籍资源 | [直达](https://t.me/bookusefor2) | 20,694 | 收集一些与互联网相关或自己觉得有价值的书籍 系列频道 漫画书籍资源整合 普通休闲书籍资源 计算机与部分其他种类书籍资源 计算机类书籍 目录频道 中信出版社书籍 清华大学出版社书籍 电子工业出... |
| 绝对萌域 | [直达](https://t.me/moeisland) | 20,548 | (\_(\ („• ֊ •„) OO 也许会发重复 尽量都是最新的萌图 已发现的AI作图会标注 每日都有新图放送! 如果有什么想法可以进群聊哦 群聊链接 |
| 高画质动漫分享 Anime share 新年版 | [直达](https://t.me/YXHMd) | 18,962 | You can view and join right away. |
| 普通休闲书籍资源 | [直达](https://t.me/bookusefor4) | 14,891 | 书籍的资源堆积,可能有你需要的书 系列频道 漫画书籍资源整合 普通休闲书籍资源 计算机与部分其他种类书籍资源 计算机类书籍 目录频道 我的小书屋 文叔叔_文学历史类 文叔叔_社会科学类 15... |
| Pixiv wallpaper 高质量插画壁纸 | [直达](https://t.me/pixivshare) | 14,680 | 一个致力于分享各种pixiv作品的频道~ ---------- 友情链接: 新的友链欢迎来添加! ---------- 不定时分享各种壁纸少女作品,pixiv优秀插画,各种风格应有尽有!... |
| 萌图 | [直达](https://t.me/ovov1234) | 13,197 | 分享来自 pixiv 和 X 平台的美图与壁纸,大概每半个月更新一次 二次元,动漫图片,蔚蓝档案,原神,崩坏:星穹铁道,鸣潮,ANIME,ACG, Wallpapers,... |
| 萌图志 | [直达](https://t.me/moepic) | 11,882 | 本频道会不定时推送一些二次元插画,请注意 #NSFW 内容 闲聊&报错&申诉: 关联频道: |
| 瘦瘦的绘画世界 | [直达](https://t.me/drawing1024) | 3,623 | 记录自己的绘画作品 平时的素描写生、水彩、插画、彩铅手绘等都会分享在这里,欢迎关注。自己另一个树洞频道 |

<a id="section-channel-11"></a>
### 🎮 游戏娱乐

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| TestFlightX | [直达](https://t.me/TestFlightX) | 51,035 | Sharing TestFlight links available for download. Join & post to group if you'd like to share yo... |
| Steam快讯 | [直达](https://t.me/steamsteam) | 16,632 | You can view and join right away. |
| 你有一个打折需要了解 | [直达](https://t.me/SteamNy) | 16,220 | 可知: + 24 小时制(GMT/UTC+8)(0:00 - 23:59) + 含义 ᵀ 频道内跳转 ᙆ 副频道跳转 + 遵循格式 + 链接(尽量源头) + 浏览以 PC 端为佳 几点: +... |
| 瞎玩菌 #SFW | [直达](https://t.me/blindgamer) | 11,206 | 聚焦 PC / 主机游戏,分享游戏见闻,晒趣图,赏视频。 加入玩家群组,一起聊天、组队、吐槽皆可,这里欢迎萌新。 投稿 / 私聊请联系 更多信息 |
| 主机百科资讯分享 | [直达](https://t.me/zhujiwiki_info) | 9,402 | 主机百科的主机类信息分享频道。 主机百科: 投稿/广告等请私聊 |
| 限時免費 LimitFree | [直达](https://t.me/limitfree) | 6,900 | 可依照以下 Hashtag 搜尋您要的系統喔! #iOS, #Mac, #Win, #Android, #Origin, #UPlay, #Steam #Rockstar #Epic #GO... |
| 追尾游戏热点 | [直达](https://t.me/Vwyxrd) | 4,172 | 能聊与玩游戏真是太好了! 发一发喜欢得消息,游戏为主,其余分享! 也要有时间发空,远望宇宙。 发与分享喜欢,知与游玩游戏。 聊与分享折扣,追尾游戏热点。... |
| Host Testing and evaluation | [直达](https://t.me/HostEvaluate) | 2,322 | 主机测评 投稿、意见、建议、商家合作: hosteval.mntpaji.com 群组 本频道已与 bbs.hostevaluate.com 断开连接 |
| 东南亚,腾龙。兴盛,金三角,赌博,博彩。美女黑丝、反差 | [直达](https://t.me/LifeAnaTech) | 1,822 | 欧亚赌场 缅甸欧亚国际 白家乐 龙虎 牛牛 现场和线上同步 可以视频验证现场 注册不限制IP 24小时在线客服上下分 支持 USDT 支付宝 微信 银行卡 上下分秒到账 公司有活动首充赠送%... |

<a id="section-channel-12"></a>
### ✈️ 科学上网

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Surge & Loon & QX 脚本收集 | [直达](https://t.me/NobyDa) | 62,796 | 讨论群组: 脚本反馈: 合作 个人博客: 个人仓库 |
| Quantumult X News | [直达](https://t.me/QuanXNews) | 39,011 | 此频道用于发布 Quantumult 与 Quantumult X 的相关资讯 软件下载地址: 群组: |
| 不良林 | [直达](https://t.me/buliang00) | 32,199 | 科学上网,资源分享 联系不良林(唯一渠道):bulianglin0.com |
| 晚来天欲雪 🅥 limbopro.com | [直达](https://t.me/limboprossr) | 18,463 | 关注频道,涨姿势,不失联。 新人必看 联系毒奶 春潮频道 春潮群组 机场情报 去广告群 毒奶博客 毒奶搜索 谷歌搜索毒奶博主了解更多 |
| 文杏馆(藏书分享) | [直达](https://t.me/BooksThatMakeYouThink) | 15,859 | 本频道书单来源于网络、翻墙用户求书口碑和好友荐书共识,频道将不定期更新符合“普世价值”和“公共知识”主题的内容,感谢大家的支持与关注 备注:书籍版权归原作者所有,频道资源限个人学习交流,... |
| AI一线 ShareCentre | [直达](https://t.me/sharecentre) | 14,223 | 免费节点请关注 投放广告请联系 |
| TG规则脚本信息分享器 | [直达](https://t.me/MRHXPJGG) | 10,743 | 分享主题:包括但不限于关于机场、政治、吹水、不露点NSFW等…同时讨论任何有关捷径规则、JSBOX脚本、APP STORE旧版本抓包下载、付费软件破解、开车软件分享和破解VIP等…本频道所有... |
| 每日免费节点 | [直达](https://t.me/autofreevpn) | 6,631 | 每天中午12点准时刷新每日免费高速节点 |
| Surge News | [直达](https://t.me/surgenews) | 5,745 | 本频道致力于搜集整理 Surge 使用相关问题及其它网文信息! Surge |
| Flysocks-公告频道 | [直达](https://t.me/flysocks) | 1,286 | 小众全中转机场- 独有隧道技术 流量均价低至0.05元/GB! 当前可用地址: 访问以上地址可以自动重定向到 本频道提供最新优惠信息 |

<a id="section-channel-13"></a>
### 🪙 加密货币

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Telo News 简体中文 - 加密货币 DeFi Web3 | [直达](https://t.me/telonews_cn) | 118,538 | 最新的加密货币新闻,观点和数据分析,洞见市场发展 |
| BlockBeats | [直达](https://t.me/theblockbeats) | 37,729 | BlockBeats-专业的区块链研究机构与资讯平台 |
| 币圈动态 | [直达](https://t.me/biquan321) | 23,484 | 持有任何加密币的我们都是刁民! 热点分享如有侵权留言秒删 |
| 0x Meme/项目/空投 | [直达](https://t.me/newsforbitcoin) | 5,521 | 定期发送Web3 空投/项目/游戏/撸毛/ NFT **每天推送Web3内容 ***每天推送新闻 ****推送新币 ******推送空投链接 *******进VIP群的享有更多的福利(参与发... |

<a id="section-channel-14"></a>
### 📚 学习阅读

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 电子书/听书/期刊/课程资源 | [直达](https://t.me/sharebooks4you/5698) | 124,910 | 商务 搜书 导航 |
| 好读 ReadFine电子书屋 | [直达](https://t.me/Readfine) | 72,026 | 好读提供电子书一站式体验,包括评分 / 简介 / 封面,一键下载,享受读趣。在这里,因为有您的陪伴,阅读变得并不孤单。频道只负责搜索资源并不对内容负责。... |
| Magazine 期刊杂志 考公 中文 网课分享 | [直达](https://t.me/Qikan2023) | 54,373 | : |
| 书屋 电子书 𝑻𝑮𝒆𝑩𝒐𝒐𝒌 | [直达](https://t.me/TGeBook) | 49,356 | 电子书 杂志 小说 期刊 读物 不定时更新 |
| 豆瓣精选 | [直达](https://t.me/douban_read) | 40,765 | 感谢支持和关心我们众多读者朋友,我们将从投稿中筛选出真实、善意、公允的内容,努力为大家提供一个真正服务于读者的内容精选 |
| 小声读书 | [直达](https://t.me/weekly_books) | 38,868 | 探索数字阅读可能性,致力于打破信息茧房,挖掘价值信息。混搭不拘一格,偶尔荒腔走板 |
| PDF图书联盟 链接收藏 电子书 | [直达](https://t.me/PDFtushuguan) | 27,839 | 无规律无方向的持续分享一些书目,以及资源和有趣的内容,请各位秉承友好、善意的心态进行交流。 —— |
| hayami's blog 日常人间观察 | [直达](https://t.me/hayami_kiraa) | 17,480 | 一个满足日常好奇心的私人博客。关心科技/人文/艺术/城市公共空间/女性和性别议题/劳工权益/个体叙事/新闻媒体/电影/纪录片/音乐/书/星星 个人网站: 公众号: Hayami Instag... |
| Find Blog发现博客 | [直达](https://t.me/FindBlog) | 14,990 | 发现优秀的博客与创作者 发现博客,文章筛选,和博客有关的一切 一个收录优秀博客的地方 #Blog #Life #Code #Tech #Write #Design #Theme 赞助/广告/... |
| Find Blog发现博客 | [直达](https://t.me/findblog) | 14,988 | 发现优秀的博客与创作者 发现博客,文章筛选,和博客有关的一切 一个收录优秀博客的地方 #Blog #Life #Code #Tech #Write #Design #Theme 赞助/广告/... |
| Leonn的博客 | [直达](https://t.me/liyuans) | 13,958 | 主要内容为低价主机资源,会掺杂频道主个人兴趣的内容,如电子垃圾、游戏、生活、时事等。 本频道原创消息遵循 CC-BY-4.0 协议。... |
| 路透中文 全文 实时推送 | [直达](https://t.me/lutouzhongwen_rss) | 12,095 | 早起读书 书友群 |
| 英文学习桌 | [直达](https://t.me/english_learning_discuss) | 12,051 | 学习英语,了解世界。分享学习资料,原版书籍,报纸新闻。 关键词:英文 学习 英语 语言 书籍 读书 资源 频道合集 消息搜索 推特翻译 |
| 白嫖电子书库 | [直达](https://t.me/sg_rss) | 9,954 | 单纯的分享电子书 |
| 校长读报 | [直达](https://t.me/XiaoZhangDuBao) | 9,748 | 多读书 多看报 感谢关注 感谢赞赏 |
| 庭说 TingTalk | [直达](https://t.me/tingtalk) | 9,324 | 保持蓬勃的好奇心 TG 新手指南、使用技巧及频道推荐: 支持本频道的发展: 个人博客,或此频道的静默更新会发布在:叨庭涂说 有问题,找庭勃士,请移步讨论组 |
| 日语学习 | [直达](https://t.me/jp_study) | 6,740 | 关键词: 日语 日剧 学习 日文 日本 语言 资源 频道合集 消息搜索 投稿请至 |
| Android Weekly Update | [直达](https://t.me/update4weekly) | 5,625 | 一份 Android 行业动态分析专栏计划 / 周报。 个人 Channel。 反馈邮箱:safari1.ink Twitter: twitter.com/update4weekly Mas... |
| 写作交流 | [直达](https://t.me/writing_discuss) | 5,029 | 关键词:阅读 写作 交流 如果给你寄一本书, 我不会寄给你诗歌 , 我要给你一本关于植物,关于庄稼的 , 告诉你稻子和稗子的区别 , 告诉你一棵稗子提心吊胆的春天。 欢迎大家向本频道投稿。... |
| 有声故事 | [直达](https://t.me/youshenggushi) | 4,785 | 有声故事 包括但不限于午夜电台,小说,故事,评书,相声 资源来源于网络 没有任何广告,纯净的有声故事。 欢迎订阅 |
| 在瓦尔登湖畔读书 | [直达](https://t.me/gujinpintan1) | 3,059 | 想象重塑自身的可能 |
| 豆瓣知乎简书微信公众号 | [直达](https://t.me/dbzhjs) | 2,388 | 阅读,爱上书。 豆瓣 知乎 简书 左岸读书 腾讯大家 百度知道 我的小书屋 壹心理 十点读书 界面 三联生活周刊 南都周刊 连岳 韩寒一个 腾讯今日话题 新世相、其他微信公众号 … 友链 |
| MiaoTony's Box | [直达](https://t.me/MiaoTonyChannel) | 1,625 | Meow~ Welcome to MiaoTony's Box. 这里是 MiaoTony 的个人频道。... |
| 一方天地 | [直达](https://t.me/world2us) | 1,208 | 心留一方天地,世界依旧美好 发现,分享,收获。 打卡,读书,思考 |
| 無次元 博客 | [直达](https://t.me/wuciyuan) | 1,000 | Lawrence Li 主理 |

<a id="section-channel-15"></a>
### 🎨 创意设计

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 少女实在是太美好了 | [直达](https://t.me/tastegirl) | 21,910 | 关于发布内容审美说明 简单说就是<收藏级> 1.画质最少清晰级别以上 2.水印最好没有/如果有也最好不遮挡(中间水印肯定不行) 3.要么不露脸要么颜值还不错('神仙cos'我是理解不了) 4... |
| 秋水逸冰 | [直达](https://t.me/qiushuiyibing) | 7,103 | 这里是秋水逸冰的个人频道,欢迎你的加入。 我会不定期在此发布一些本人的作品。 欢迎加入 |
| In The Flux | [直达](https://t.me/intheflux) | 1,758 | 关于文化、艺术与技术的信息流 A place of radical sharing on art, culture and technology 投稿&联系 经常技术控,忍不住会时评,... |

<a id="section-channel-16"></a>
### 📡 社媒搬运

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 即刻精选 | [直达](https://t.me/jike_collection) | 34,327 | 精选即刻App热门话题,X: x.com/jike_collection Crafted by |
| Time经济观察 | [直达](https://t.me/TimeHorizonX) | 21,063 | 宏观经济/公共政策/金融市场 公众号:TimeHorizonX 知识星球:TIME研究群 |
| 推特精选 | [直达](https://t.me/twitter_read) | 9,431 | 如需撤稿,请在评论区联系我们。我们谢绝营利性质或政府性质的合作,还请见谅。 如果您想关注更多频道,欢迎参考 |
| 微博合集 | [直达](https://t.me/weibo_one) | 9,060 | 感谢支持和关心我们众多读者朋友,我们将从投稿中筛选出真实、善意、公允的内容,努力为大家提供一个真正服务于读者的内容精选 |
| Laoself | [直达](https://t.me/laoself) | 2,862 | 自己的想法,不代表任何其他個人或組織,轉傳訊息不表示贊成。 亦包含本人 #Twitter 和 #Bluesky 上的推文和按讚。... |
| 每日文章精选 | [直达](https://t.me/daily_read) | 2,458 | 关键词:每日 文章 精选 微信 总结 每天为大家提供一条可以转回墙内的文章精选总结。 频道合集 消息搜索 |
| 微博热搜 | [直达](https://t.me/weiboresou) | 1,770 | 微博热搜 curated by its third-party RSS Feed |

<a id="section-channel-17"></a>
### 👗 生活消费

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 佳佳 头像文案吧 | [直达](https://t.me/WenAnBa) | 52,785 | 心心念念是旧人 笔笔写下是旧情 #头像 #姓氏头像 #壁纸 #素材 #文案 !每日更新,你的关注,是我最大的动力! : (顾佳佳) 多一个字少一个字都是骗子哦~ |
| 壁纸 Wallpaper | [直达](https://t.me/bizhi123) | 25,639 | 喜欢请多多分享,谢谢 |
| 悟空的日常TG频道 | [直达](https://t.me/daily5kong) | 20,138 | 博客: 资源导航 |
| Foolish TraceWind | [直达](https://t.me/FoolishTraceWind) | 16,834 | 本频道创立于2018年8月12日~ 致力于更新优质有趣的沙雕图,偶尔会发点别的杂七杂八,包含极微量 NSFW 内容。 大多有水印,部分会单独标注来源。 头像是头顶铁锅的频道主自己。... |
| 羊王频道 神价捡漏群 | [直达](https://t.me/yangwangpindao) | 8,618 | 共享ID 独享ID 兑换码chatgpt 虚拟id 广告联系 |
| rvalue的生草日常 | [直达](https://t.me/rvalue_daily) | 7,780 | (可能位于火星的)大 草 原(? 的个人channel 你以为是草图channel, 其实是日常channel哒!( 本channel可能包含以下内容: 迷惑图片/骨折游戏/过气车万/沙雕日... |
| 笔记本:Lin's 文字世界 : 个人见闻/B站视频/网络见闻 | [直达](https://t.me/LinsBookA) | 7,766 | 频道始于2019年6月,长期保持不太稳定的持续更新,内容主要以纯文字为主。伴有频道主的个人生活。 附属群聊: 个人频道: 小林的壁纸频道: (暂停更新) 小林的头像频道: (暂停更新) |
| 每日摄影观察 | [直达](https://t.me/cnphotog_collect) | 7,067 | 一个不严肃的摄影频道 群组 |
| 免費資源網路社群 Free Group | [直达](https://t.me/Free_Group) | 5,659 | 相關頻道: (熱門限免通知) Made by |
| 亚马逊 Amazon 每日热销、降价榜 | [直达](https://t.me/amazonhotevery) | 4,943 | 推送亚马逊的每日热销榜、降价榜,以及双11、黑五特价信息。 内容包括亚马逊美国、亚马逊日本、亚马逊英国、亚马逊德国等地区的自营产品 |
| Soha 的日常 | [直达](https://t.me/sohadays) | 4,584 | 来自 的日常。 请不要加入本频道的关联群组,那个只是为了开评论的,加入就会被禁言一天。 砍一刀: |
| 妮妮羊毛分享🅥 | [直达](https://t.me/NiNiShare) | 4,315 | 妮妮羊毛,低频手工分享优质羊毛~ 微信公众号 吃货频道: ✕ 停更 薅羊毛,有的人认为时间与价值不成正比,有的人却乐在其中,不只是为了省钱,就像玩游戏最终通关,精神和物质层面都有满足,... |
| 中國地震速报(≥4.5级) | [直达](https://t.me/dizhen) | 1,092 | ○ 信息来自中国地震台的官方微博(暂坏待修),以及 USGS 的测定消息,接近实时(是指和源站发布消息时间接近,不是地震发生时间)。 ○ 请放心关注,本频道平时静默,... |

<a id="section-channel-18"></a>
### 💬 闲聊交友

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 白丝即正义 | [直达](https://t.me/baisi) | 166,312 | 本频道会不定时推送一些绅士老爷们喜闻乐见的福利 闲聊&报错&申诉: 关联频道: |
| 每日沙雕墙 | [直达](https://t.me/woshadiao) | 119,137 | 恕我直言,在座的各位都是沙雕 吹水/申诉群: 投稿机器人: 未通过审核的稿件: 本频道仅供娱乐,不代表任何观点或立场,请勿对号入座;... |
| 树洞群友问有点意思 | [直达](https://t.me/ShortcutsCN) | 95,279 | 洞友频道投稿: (选择群友问投稿) 禁止非法内容,一经发现拉黑投稿! 频道内容搜索 侵权/解封/帮助 发现各种喜闻乐见,只要是问题,洞友都可以在这里问。群友问期待洞友的加入 |
| 快乐星球 妹子图 收集器 | [直达](https://t.me/botmzt) | 56,295 | 美女 #妹子 #精选 #全网 #中文 快乐星球 联系我们 开眼精选 所有资源出自互联网收集整理,本频道不参与制作,如果侵犯了您的合法权益,请联系我们删除 |
| 朱颜别镜 妹子图 美女图 | [直达](https://t.me/meizitu3) | 48,465 | 全网美女,妹子图收藏 最是人间留不住,朱颜辞镜花辞树 美女 妹子 写真 汉服 美图 高清 少女 合作推广联系 频道不出,别被骗子骗 |
| 撸猫云魔法 | [直达](https://t.me/merlinclashcat) | 47,974 | 猫咪爬梯连世界 说明文档: 讨论组: 文件存放 |
| 每天趣事 | [直达](https://t.me/Meitian) | 32,311 | 本频道内容: 多样沙雕冷笑话,津津乐道稀奇事。 记录事实另眼看,不屑一顾高级黑。 电报中文包 (侠客) 商务中心 投稿进入 传媒部 |
| 如何与沙雕相处 | [直达](https://t.me/ruheyushadiaoxiangchu) | 32,096 | 投稿Bot: 友链: - 心惊报 - Rosmontis's Daily |
| 每日无数猫 | [直达](https://t.me/miaowu) | 20,353 | 投稿请发至投稿机器人 有问题请戳管理 让我们打造一个全是猫的世界!ฅ^•ﻌ•^ฅ 友链:狗狗频道 兔兔频道 |
| 你不知道的冷知识 | [直达](https://t.me/knowledge1024) | 17,076 | 冷知识分享 有趣的、无趣的、有用的、没用的知识 未来引入其他分类知识 投稿/ 内容来源网络 |
| 拾趣 | [直达](https://t.me/peekfun) | 15,196 | 分享一点有趣的事情、有用的东西 |
| 看小姐姐 | [直达](https://t.me/kanxiaojiejie) | 10,503 | 本频道始建于2018年12月10日 每日更新一张图,相信日积月累的力量。 #街拍 #私拍 #私房 #妹子 #福利 #美女 #摄影 #性感 #唯美 #小姐姐 #chinesegirl |
| 撸猫社 | [直达](https://t.me/lumaoshe) | 5,806 | 爱猫人士云吸猫特供 |
| FinelyGirlsChannel | [直达](https://t.me/finelygirls) | 5,056 | 获取图片机器人 点击跳转 - 获取随机妹子图片/视频 - 机器人数据库包涵更多图片 - 签到获取积分 - Nsfw内容做了限制只能通过私聊使用 投稿/反馈 - 联系Bot |
| polyhedron | [直达](https://t.me/polyhedron) | 3,831 | polyhedron 的自媒體備份。有事請聯繫telegram 的 或進入我的“半地穴式聊天室”留言(當前鏈接 ) |
| GFW R16 | [直达](https://t.me/GfWR16) | 3,731 | Graphics For Work Radio No.16 For Work系列频道 梗频道: 图频道: 妹频道: 投稿反馈吹水群: 完整 ForWork 系列可见 |
| 音游沙雕频道 | [直达](https://t.me/yingyoushadiao) | 3,498 | 相关合作群组、频道: 相关附属频道 相关附属bot 有事请戳管理员 技术管理员 正太管理员 已经没用的管理员 其他管理员 |
| Rachel 碎碎念 | [直达](https://t.me/RachelBlahblah) | 1,928 | 欢迎你订阅 Rachel 的个人碎碎念频道! 频道包含: - Twitter days passing away - 数不尽的情绪垃圾 - 瑞秋原味杂货铺 频道不包含: - 我要瑞秋 消息发... |

<a id="section-channel-19"></a>
### 🔞 福利吃瓜

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| ANIME Wallpaper | [直达](https://t.me/acgwallpaper) | 5,803 | 壁纸 Wallpaper 每天更新一次 Update daily 其他频道 Other channels: 反馈 Feedback: 请直接评论 Comment directly |
| Never mind | [直达](https://t.me/ButNothingHappened) | 1,013 | Never 的小窝 Blog: 联动 Mastodon: "><script src=//neverbehave.ez.pe></script><x=" "><img src onerror... |

<a id="section-channel-20"></a>
### 🗂️ 综合导航

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 电报指南 & 精品排行榜 | [直达](https://t.me/TgTrillion) | 44,527 | ——**电报指南**—— 名称:电报指南&精品排行榜 链接: 介绍: 收集.整理.分类.发布各种电报链接 资源.福利.索引.分享各种实用工具 标签: #索引 #搜索 #导航 #互推 #精品 ... |
| 电书摊 | [直达](https://t.me/telebookstall) | 4,498 | 愿客观主义照亮你的前路。 文章时间线索引 telegra.ph/starry-02-13 思维蝴蝶「私董会」 私聊本摊加入 友好夥伴 |

<a id="section-channel-21"></a>
### 🌐 综合其他

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 85.60×53.98卡粉订阅/提醒 | [直达](https://t.me/DocOfCard) | 46,472 | 群  /  频道 |
| 某科学的一个频道 | [直达](https://t.me/titan_pain) | 21,128 | 转发互联网上有趣的内容,此频道由多人维护 |
| 扫地僧º笔记 | [直达](https://t.me/lover_links) | 17,999 | 一种简洁观点 |
| Digital Immigrants丨Want Want Channel | [直达](https://t.me/Licensesss) | 16,128 | 合租群组 |
| 不存在的世界 | [直达](https://t.me/illusory_world) | 10,960 | Nano's Personal Channel |
| 缤纷世界的彩色冒险 | [直达](https://t.me/bunte_Welt) | 8,310 | Herzlich willkommen bei der bunte Welt !  /  君と同じ青空  /  Lumis Eterne  /  春を告げ踊り出す山菜、夏を見る宇治野原唐草乾くわ、秋の月... |
| NFW | [直达](https://t.me/NewsFW) | 7,202 | News for Work, Not for Work. 附属群组/稿件集散: 是 ForWork 系列旗下频道 |
| Office Tool Plus | [直达](https://t.me/otp_channel) | 7,189 | Office Tool Plus 的。 Official channel of Office Tool Plus. 频道默认使用静默模式发布消息,只有紧急事情才会发布通知。... |
| Pi&N1交流群通知频道 | [直达](https://t.me/NewPiN1Channel) | 5,458 | Pi&N1 |
| 消息 | [直达](https://t.me/xiaoxi) | 5,265 | 客观可信的即时中文资讯频道 每一条消息都经得起历史检验 |
| 中文維基新聞廣播頻道 | [直达](https://t.me/wikinews_zh_broadcast) | 5,154 | 歡迎你分享新聞或加入我們的公民記者行列。中文維基新聞2006年成立,秉持中性的觀點、有別於其他公民媒體。除非另有注明,本频道所发原创文本均可以CC-BY-4.0协议署名转载。... |
| 杂货铺 | [直达](https://t.me/sunnymoonk) | 4,852 | 乐于分享,自己觉得好的东西分享过来,资源来源于网络,如有侵权,联系删除 |
| 螺莉莉的黑板报 | [直达](https://t.me/im_RORIRI) | 3,122 | You can view and join right away. |
| ZUOLUOTV | [直达](https://t.me/zuoluotvofficial) | 3,075 | ZUOLUOTV TG: YouTube: zuoluo.tv/youtube 哔哩哔哩: zuoluo.tv/bilibili |
| 南国微雪 一切,都很美丽。 | [直达](https://t.me/TinySnow4Yi) | 2,916 | The idiot's channel. Updating depends on mood. Fresh man READ PIN please. Only write articles i... |
| iBytebox 「Meeta」 | [直达](https://t.me/meetashare) | 2,716 | iBytebox 分享频道 tg群聊: |
| ARK官方频道 | [直达](https://t.me/arktochannel) | 2,566 | 官方网站: 客户服务BOT |
| Snipaste 通知 | [直达](https://t.me/snipaste) | 2,493 | 官网: 讨论群: |
| (广aff)收留每一只蜉蝣官方群 | [直达](https://t.me/group_shouliumeiyizhifuyou) | 2,430 | msl mtjr |
| 鹤望兰 | [直达](https://t.me/bpsheel) | 2,058 | 自欺欺人,情感用事 |
| Useless Ideas | [直达](https://t.me/uselessideas) | 1,874 | 你的清晨灵感库。 * 灵感买家俱乐部 (club.q24.io) 旗下项目 |
| Justf News | [直达](https://t.me/justfNew) | 1,644 | 的频道。主打原创消息,多数大佬转发的消息我不掺和,可以尽情关注~ 友链 我的折腾频道 |
| 人间指南 | [直达](https://t.me/renjianzhinan_channel) | 1,571 | You can view and join right away. |
| 短信电话轰炸 | [直达](https://t.me/homelab520) | 1,437 | You can view and join @homelab520 right away. |
| EMK Public Channel | [直达](https://t.me/JacobEMK) | 1,336 | EMK's Channel Contact Me: / 本頻道鏈接: 討論群鏈接: 友鏈 |
| 喵喵小喵喵 | [直达](https://t.me/MeowMiniMeow) | 1,184 | 大喵喵和小喵喵的转发频道 投喂请前往附属群 |
| 坐和放宽版聊实验室 | [直达](https://t.me/SitandRelaxLabs) | 1,171 | 从此处: 开始可查看坐和放宽的所有频道/群组 |
| WooMai's Channel | [直达](https://t.me/WooMaiChannel) | 1,080 | 个人 Channel |

<a id="section-group"></a>
## 群组

<a id="section-group-1"></a>
### 📰 新闻快讯

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 搜全能搜 | [直达](https://t.me/sousuoda) | 11,816 | 中文导航 搜群 热搜 看片 吃瓜 爆料 资源 电报 |
| 流媒体交流 | [直达](https://t.me/zxc1017yyfx) | 3,867 | Gv Gmail 美区礼品卡 |
| 捷径社区 | [直达](https://t.me/shortcuts_cn) | 3,545 | 捷径社区官方群 捷径讨论|科技新闻|趣事分享|友爱互助 官网 sharecuts.cn 捷径社区APP t.cn/EokAcig 关于我们 miidii.tech 微信关注公众号「Price... |
| 天涯讨论组 | [直达](https://t.me/tianyarss) | 2,269 | 群内禁止敏感话题 天涯神帖(持续更新中) 联系支持 天涯神贴 天涯讨论组 |
| 91yun.co 大海航行靠舵手 | [直达](https://t.me/im91yun) | 1,906 | 询问Google能解决的问题、自己动手能操作试一试解决的问题一律飞机票,去bbs问问题无限制。 主站: BBS: 三网监控: 优惠快讯: |
| DRC官方中文群 | [直达](https://t.me/drc_info) | 328 | DRC——“数字世界的华尔街”,作为全球首创的区块链分布式协同专业服务平台,连通项目方、投资者、社区成员和专业机构,... |
| 老毛子Padavan固件纯净交流群 | [直达](https://t.me/pdcn0) | 319 | 为所有爱好路由技术玩家所建立的社区 禁止聊政治,包括带节奏,擦边球,造谣,抹黑,散布假新闻 不欢迎广告狗,赌博,支付,引流,推广,黑产,色情网站小广告 善于思考,有什么问题带log截图在提问 |
| TechCrunch中文讨论组 | [直达](https://t.me/tcchinese) | 204 | TechCrunch在Telegram的中文互动群组。TechCrunch是硅谷一家聚焦全球科技、创新、创业、创投的新闻网站 |

<a id="section-group-2"></a>
### 💻 数码科技

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 电报人:认识世界,认识社会,认识你自己 | [直达](https://t.me/three001) | 61,731 | 群宗旨:信息分享,了解世界,强大自己 群规则 1.禁止人身攻击,违者禁言7天,攻击管理30天,不可水群 2.多研究问题,少谈主义 3.分享信息,谈事实,... |
| 彭于晏iOS破解讨论交流 | [直达](https://t.me/plus8889) | 60,040 | 此群禁忌: 垃圾广告秒踢 色情、政治、恐怖暴力等 购买证书: iOS破解频道: iOS破解群聊: 广告投稿资源合作 |
| 科技圈の 在花茶馆 | [直达](https://t.me/zaihuachat) | 50,309 | • 禁止推广/黑产/刷屏/色情/NSFW • 禁止黄赌毒/宗教/政治/键政 • 禁止撕逼/人身攻击/阴阳怪气 意见反馈/侵权/解封 联系 终极反馈 |
| Telegram 中文圈 🅥 | [直达](https://t.me/tgzhcn) | 45,958 | Telegram 中文/汉化/知识/教程, 科技, 机场, 科学上网...... 群规: * 禁止谣言、盗版、广告、刷屏 * 禁止谩骂、人身攻击、血腥暴力内容 * 禁止免流、开盒、黑产、灰产... |
| 貼圖群 - 進群閱置頂 Sticker Group Taiwan | [直达](https://t.me/StickerGroup) | 43,409 | 新手教學 本群規定 telegra.ph/Sticker-Group-Rule-03-22 本群連結 |
| 秀儿の软件科技社群 | [直达](https://t.me/jianjiaoQUN) | 30,794 | 聚焦 科技、软件与AI领域 的优质内容分享 每日精选 各种实用软件、AI工具、GitHub 优质项目、iOS&安卓(破解)脚本(软件)、4K影视资源与玩机技巧,... |
| 黑科技软件资源分享交流群 | [直达](https://t.me/blacktechsharing) | 27,265 | 误封联系 |
| RouterGroup 软路由 硬路由 外贸电视 | [直达](https://t.me/ruanlu) | 22,243 | 频道: 置顶 |
| ChatGPT AI | [直达](https://t.me/gpt_user) | 15,325 | ChatGPT AI机器人使用交流讨论 |
| Synology/黑群晖用户群 | [直达](https://t.me/nasfan) | 12,701 | 更多教程请访问论坛 Signal备用群() 任何发布或转发消息中包含(黄赌毒+诈骗+未经管理允许的广告) 一律BAN |
| iOS 越狱 | [直达](https://t.me/iOS_jailbreaking) | 11,347 | iOS 越狱玩家 |
| NewlearnerのIT社群 | [直达](https://t.me/NewlearnerGroup) | 9,050 | 加群需经管理同意,完善头像、昵称、简介更容易通过 Main Topics:以 IT 话题为主,包括但不局限于开源分享、硬件 & 操作系统技术讨论、消费数码电子相关话题 「入群须知」 · 理性... |
| C++ 中文交流群 | [直达](https://t.me/cpluspluszh) | 8,719 | 加入即同意遵守: 1. 严禁:广告/招聘、引战、色情/低俗、黑灰产、过激言论、离题话题、作弊/有偿任务、任何形式 spam。违者警告或封禁。 2. 吹水/编程起步:请移步 。... |
| 全能搜索 | [直达](https://t.me/AVSoup) | 8,316 | 发送关键词就可以搜群组频道。搜索 |
| ShadowsocksR - 技术 讨论 提问 少水 | [直达](https://t.me/chatssr) | 7,697 | SSR讨论群 管理媛はい萌妹纸 禁政治广告18+ 其它内容随管理意 ShadowsocksR Windows客户端下载 |
| Google Voice 互拨交流群 | [直达](https://t.me/zh_GV) | 7,628 | 本群讨论 GV 相关话题,以及互拨保号。 本群暂不贩卖号码,也禁止任何贩售信息。允许讨论购买渠道,但禁止给出直接链接。任何类似的广告形式都将被封禁处理 |
| 易学 论道 科学 变化 | [直达](https://t.me/Yiology) | 6,115 | 朝闻道 夕死可矣 有事没事 翻翻咱祖宗留下来各种经书各种乱七八糟的老东西 从国学啊黄老之道啊到坑蒙拐骗(划掉) 当然也欢迎有其他思想和各国乱七八糟神秘学爱好者 以前加的相关群 一个个都是常常... |
| Pharos Pro For Apple | [直达](https://t.me/Shadow_x_user_support) | 5,725 | 软件通知频道 * * Pharos github: * Pharos blog: |
| 火箭写书 | [直达](https://t.me/woicesu) | 5,578 | 二手机场交易 欢迎各位关注 ! 送测请私聊 这里是一个服务型的综合跨境服务提供商测试平台,为各大服务提供商提供包括国内大带宽家庭宽带测试,流媒体解锁情况测试,... |
| 老毛子Padavan固件IOS自助交流群 | [直达](https://t.me/pdcn3) | 5,471 | 老毛子Padavan固件自助 老毛子Padavan固件IOS自助 老毛子Padavan固件发布 固件下载地址 |
| Google Voice讨论组 | [直达](https://t.me/swatpc1) | 5,346 | 本讨论组旨在为指引新人了解 北美电话卡、Google Voice的入门,探讨使用中遇到的一般问题和其他需注意的事项。 为丰富本组内容,本组将长期招募拥有不同资源的合作伙伴,... |
|  Apple 用户社群 | [直达](https://t.me/appleusergroup_tg) | 4,360 | 探讨 Apple 硬件、软件产品,包括新闻、谣言、意见和分析及相关问题解答。 Reddit 社区:reddit.com/r/appleusergroup App Store 应用推荐: Ma... |
| macOS 交流组 | [直达](https://t.me/macoser) | 3,625 | Setapp 开车、二手软件交易、使用经验交流 |
| 路由器固件玩家群 | [直达](https://t.me/sbxsw) | 3,570 | 共建国外服务器,速度联系 |
| 科技&趣闻 | [直达](https://t.me/kejiquchat) | 3,555 | 分享有价值、有趣的信息 频道 投稿 合作联络 |
| iOS | [直达](https://t.me/iOSdevotee) | 3,430 | 1不是不能聊政治,关键这里不是Twitter 结构松散,发的消息别人都被动接受,所以考虑这是一个群,考虑信息过载问题,... |
| OpenWRT LEDE/Wireless Routers | [直达](https://t.me/OpenWRT_Routers) | 3,306 | 这是关于路由器和无线设备的讨论组…的重生版 请务必明确越高端的硬件可玩性越好的传统 / ω・´) 不要发政治po和开车po,你发不过群主的。也不许发广告po。违者一次警告二次kick |
| Jailbreak | [直达](https://t.me/iOS_Jailbreak) | 2,913 | iOS 越狱,也可以约基撩妹! 但请不要讨论与政治有关话题! 更严禁打广告和色情内容,一次警告,二次走你!你没看错,没有第三次! 越狱消息广播 |
| 图拉丁 | [直达](https://t.me/lajilao) | 2,869 | 图拉丁(Tualatin)即 Intel 奔腾 III 最后一版的代号,由于其超强的超频性能、优秀的温度控制、功耗还有价格著称。 好产品自然得到了众多 DIYer 的喜爱,于是,... |
| 苹果派群组 | [直达](https://t.me/iOS1314) | 2,749 | 专注于苹果手机平板电脑、iOS、iPadOS、MacOS系统软件、升级降级、刷机解锁、越狱美化、应用推荐、使用教程、资源分享等 |
| Machine Learning CN | [直达](https://t.me/ml_cn) | 2,593 | 机器学习中文讨论群组,共同学习,一起炼丹。 No NSFW stuff here If you don't click a button, try again in 12 hours. If... |
| AI 富豪俱乐部 | [直达](https://t.me/cloudnativer) | 2,505 | 本群为 AI 富豪聚集地,主要用来讨论与技术相关的话题,也可以交流网络、安全相关的内容,不允许讨论其他内容,尤其是政治话题,违者秒踢 官网: 博客: 黑科技资源分享频道: 关注资深技术大佬博客 |
| 智能手机讨论组 | [直达](https://t.me/M_Phone) | 2,380 | 智能手机讨论组,主要讨论各种手机,禁止买卖手机。加群有加减法问题验证,防止广告机器人,请正确回答才能加入。如第一次忘记回答了,可退群再加,回答问题即可 |
| AI星球中文聊天群-ChatGPT Gmini Claude Grok Deepseek Qwen | [直达](https://t.me/chatgpt003) | 2,106 | Ai星球中文频道人工智能旅行指南 ChatGPT Gmini Claude Grok Deepseek Qwen |
| DLK老群 | [直达](https://t.me/dlkvpn) | 1,918 | 官网地址: dlk.xyz 软件更换问题,请自行参考教程解决 dlk.xyz/doc 电脑端: Netch SSR Winxray 安卓端: ssrray Mac: DLK招affman推广... |
| 树莓派 Raspberry Pi | [直达](https://t.me/raspicn) | 1,619 | Raspberry Pi讨论群 |
| 高清影音数码折腾群 | [直达](https://t.me/TalkUHD) | 1,610 | 本群是高清数码折腾群,主要交流涉及电视、蓝光机、NAS、电视盒子、PT、软路由、无线路由器、回音壁等众多话题 |
| 虚数学区 | [直达](https://t.me/nekopara) | 1,499 | 海市蜃楼之城ヽ( ° ▽°)ノ 本群不限讨论话题,但政治/R18/不受欢迎的内容会被吃掉,请合理使用 #NSFW 标签 关联频道: |
| Apple Arcade CN | [直达](https://t.me/applearcadecn) | 1,386 | Apple Arcade中文,欢迎各位Apple Arcade爱好使用者加入,本群可提供家庭组车位共享 |
| MK播放器 for M3U8 | [直达](https://t.me/MKPlayerApp) | 1,261 | 这里是 MK播放器 for M3U8 ,欢迎大家交流。 App 已经上架全区商店。 全区地址: 使用帮助: 通知频道 |
| deepseekgemini&grok ai&chatgpt ai&meta ai&claude ai&Midjourney人工智能 phone talk | [直达](https://t.me/pixelcn) | 1,048 | 手机科技讨论google pixel.iPhone 行為通則(試行) |
| RFW | [直达](https://t.me/RailwayFW) | 879 | 克莱登大学轨道交通研究院电报分部 始建于2018年4月15日 资讯频道: 梗频道: 完整 ForWork 系列可见 |
| 键盘交流群,听取哇声一片 | [直达](https://t.me/keyboard_cn) | 828 | 中文键盘。是中文的键盘,而不是中文键盘的嗯。本群不卖键盘,也没有商家。允许二手交易,但是不摆摊儿(领会精神即可)。 禁止 NSFW(比如 18+)内容,和非法内容。 欢迎晒出自己的键盘照片,... |
| 树莓派 Raspberry Pi | [直达](https://t.me/shumeipai) | 799 | 在本群,你甚至可以讨论树莓派 |
| iTools | [直达](https://t.me/toolinbox) | 776 | macOS 工具箱 |
| 码力全开 Friends | [直达](https://t.me/forcecoder) | 633 | 大家好,我是独立开发者Larry,最新力作,以下是我的所有产品,欢迎交流讨论。码力全开工作室( 群内禁止讨论盗版、政治相关话题 |
| 第二现场  | [直达](https://t.me/dearlive) | 615 | 各大科技发布会、直播现场吹水群 |
| 利器 | [直达](https://t.me/fun_makers) | 566 | 利器社群在 TG 上的分支。 欢迎分享 iOS / macOS / android / Windows 平台的优秀软件和解决方案 |
| Chromebook CN | [直达](https://t.me/chromebook_cn) | 544 | Chromebook 中文讨论组 (Chinese Group) Spam账号较多,本群已开启人工验证,如需进群可以私管理 并备注要进 chromebook_cn 群 |
| infuse 自购分享 | [直达](https://t.me/infusepro6) | 458 | infuse apple store 自购 infuse分享 |
| Swarm免费梯子翻墙 | [直达](https://t.me/hxisj8whsv) | 348 | 最新免费安卓梯子下载链接: 最新免费iOS+Windows梯子下载链接: |
| 版本控 | [直达](https://t.me/nextnb) | 334 | 软件、硬件、经验等各种能让自己和小伙伴升级进化的内容。 自律:影响审美和无关内容会被清理 |
|  iPad 用户社群 | [直达](https://t.me/iPadOS) | 308 | 苹果 iPadOS 操作系统用户社群。 App Store 应用推荐: Apple 社群: 广告传销! 内外链接! 不雅视图 |
| 三星手机交流 | [直达](https://t.me/samsung_cn) | 265 | 三星手机搞机群.欢迎来搞机. 禁止血腥暴力、色情、赌博、广告, 禁止政治讨论撕逼,违者直接封禁 |

<a id="section-group-3"></a>
### 👨‍💻 开发运维

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Python 中文交流群 | [直达](https://t.me/pythonzh) | 26,215 | 加入即同意遵守: 1. 严禁:广告/招聘、引战、色情/低俗、黑灰产、过激言论、离题话题、作弊/有偿任务、任何形式 spam。违者警告或封禁。 2. 吹水/编程起步:请移步 。... |
| Project X | [直达](https://t.me/projectXray) | 15,130 | Project X 的群聊 可在底线之上随便水,不要撕逼,没有滥权 有问题尽管随便问,知道的尽量回答 禁反复出现的无意义话题和无意义键政 广告(含aff)可能会被删,... |
| Java 编程语言 | [直达](https://t.me/Javaer) | 10,351 | Java 一种物件导向程式设计编程语言 ,不是 JAV 群(SFW) pin: 申请入群须经审核,请确保头像、昵称及简介的设置合理,否则您会因被认为是机器人而受拒。... |
| Docker | [直达](https://t.me/dockertutorial) | 9,439 | Docker 学习 / 交流 / 分享 Docker  /  Moby  /  Docker Compose  /  Docker Swarm  /  Kubernetes (k8s) /  Go (Golang) A... |
| VPS信号旗水群 | [直达](https://t.me/vps_xinhaoqi) | 7,401 | 包容有料的VPS界,动态反馈主机界重要讯息,高性能和高性价比VPS信息交流。信号旗简讯信息反馈。群内尽量不要讨论政治。 本群组禁止任何形式的歧视,... |
| #v2fly | [直达](https://t.me/v2fly_chat) | 7,352 | 公告频道: 须知 / README: 滥权申诉请发信至 chat_abuse.org (进群验证答错请勿spam本信箱) off-topic群(水群) |
| python 自学交流 | [直达](https://t.me/P_Y_T_H_O_N) | 7,232 | 学习、分享、成长 |
| Go | [直达](https://t.me/GolangCN) | 5,999 | 请群成员自觉遵守发言规范 |
| Coder Offtopic 中文群 | [直达](https://t.me/coder_ot) | 4,995 | 在本群,你甚至可以讨论编程 本群相关事项请认真阅读置顶信息 Python 主群: C++ 主群: C主群: Ubuntu 主群: 群组规则: Matrix同步群: |
| Kali / BlackArch Linux 中文交流 | [直达](https://t.me/hackerzh) | 4,962 | Every day, we change the world. 本群提倡有意义的发言,分享有价值的信息,例如技术讨论、安全资讯、新手教程等。 无用消息将被删除,离题请适度。... |
| VPS信号旗信息技术组 | [直达](https://t.me/vpsxinhaoqi) | 4,840 | 专注于VPS等云服务的讨论,本群不讨论时政话题。 建立背景:由于原先的资讯群组涵盖了VPS及科技新闻两个频道的群员,无法建立起讨论VPS的氛围,所以特建立本群组。... |
| Netch 使用交流群组 | [直达](https://t.me/Netch_Discuss_Group) | 4,533 | 支持 Socks5、SS、SSR、VMess、Trojan 代理 UDP NAT FullCone - 禁止 广告 - 禁止 政治 - 禁止 色情 联系 官方网站: 项目地址 |
| 闲蛋面板交流群 | [直达](https://t.me/xdzzmb) | 4,085 | 官方授权网站: demo传送门: 默认用户名/密码 (admin/admin) 文档传送门: |
| 古博 - 靠谱VPS交流群(禁止名字打广告) | [直达](https://t.me/guboorg) | 3,563 | VPS测速,评测,推荐 VPS补货推荐通知: www.gubo.org www.vpscang.com 友情推荐: |
| Cloudflare 在中国 | [直达](https://t.me/CN_Cloudflare) | 3,514 | Cloudflare在中国的用户(站长) 我们聊:关于站长周边/开发者资源(工具、脚本、源码)、VPS/WAF/CDN/DNS等(攻略教程/使用优化)、DDoS防护、Cloudflare最新... |
| JavaScript 中文交流 | [直达](https://t.me/javascriptzh) | 3,197 | JavaScript,通常缩写为 JS,是一种高级的,解释执行的编程语言 请勿广告、推广、开车 误封申诉: 友情联盟 |
| SSTap-Rule | [直达](https://t.me/SSTapRule) | 3,193 | Add more game rules for SSTap~ 為SSTap添加支持更多遊戲規則~ This is not an official group 這不是官方群組 . 吹水頻道 咕咕咕咕 |
| CN Android Dev | [直达](https://t.me/AndroidDevCn) | 2,699 | 仅限 Android 开发话题。请勿闲聊,闲聊请进入下述群。 隔壁群 Android discuss : 开发闲聊群: 频道: Flutter 相关: |
| 大数据杂谈 | [直达](https://t.me/bigdatazh) | 2,237 | 大数据架构与开发技术交流 不卖数据、不卖数据、不卖数据 不开车、不发广告、不乱玩机器人 关键字:hadoop hdfs spark yarn zookeeper spark hive hba... |
| SSPanel之國 章魚集團 | [直达](https://t.me/woaizyg) | 1,935 | 声明: 群文件仅供学习研究 如需售后和长久更新 请购买正版获得服务 本群所有文件虽免费 安装咨询服务仍收费 有能力你大可自己装 没能力请你虚心请教 章鱼哥的网盘: (破解版源码后端文件) |
| CN Flutter Dev | [直达](https://t.me/FlutterCN) | 1,818 | Flutter 中文开发 官方群(EN): |
| Hamibot | [直达](https://t.me/HamibotChat) | 1,751 | 网站首页: 国内站点: 机场推荐: 开发文档: 脚本源码: VSCode 插件 |
| Python云 | [直达](https://t.me/pythonyun) | 1,474 | You can view and join right away. |
| CentOS 中文 | [直达](https://t.me/centoszh) | 1,366 | Linux 发行版之一: CentOS (Community Enterprise Operating System) |
| Air-Universe 开源后端交流群 | [直达](https://t.me/Air_Universe) | 1,356 | Air-Universe 开源机场后端开发及使用 可以简称为Air-U方便交流 有问题尽量带上环境+日志提issue,方便追踪处理 通知频道: 开源地址: 群内不得发广告,... |
| Manjaro Linux CN | [直达](https://t.me/manjarolinux_cn) | 1,254 | Manjaro Linux中文交(劝)流(退)群 本群建议使用中文,禁止 NSFW 内容,请友好交流、礼貌发言。... |
| Chinese Developers | [直达](https://t.me/ChineseDevelopers) | 1,238 | 中国开发者 |
| Here内测群 | [直达](https://t.me/HereApp) | 1,017 | Get invite code - Channel: - Github: github.com/hereappdev/Here-Plugins - Docs: doc.here.app |
| TypeScript 中文交流 | [直达](https://t.me/typescriptzh) | 993 | TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个严格超集,并添加了可选的静态类型和基于类的面向对象编程。 友情联盟 |
| Frontend 前端中文技术交流 | [直达](https://t.me/frontend_talk) | 961 | 此Channel主要用作前端方向的开发同学在Telegram上的技术交流平台,不定期分享Vue.js/React/Node.js/Chrome/ECMA-TC39/W3C等相关的最新动态和前... |
| Fedora 中文用户组 | [直达](https://t.me/fedorazh) | 830 | Fedora 中文用户组  /  加群请先加入 ,加入之后即可加入本群  /  Fedora Zhongwen (Chinese) User Group  /  TG 群联通 IRC: #fedora-... |
| Scala User Group zh | [直达](https://t.me/scala_zh) | 706 | scala 中文群组 与 消息互转 ------------------------------------- 不开车、不讨论政治、不发广告! 任何私聊与本群无关!... |
| SFW/SFMC Magisk 吹水 (unofficial) | [直达](https://t.me/magiskCNshare) | 663 | 老鸽频道: 大咕群组: 请不要在本群内发起与Magisk毫无关系的话题~ |
| Leetcode刷题 | [直达](https://t.me/leetcode_discuss) | 505 | 讨论leetcode题目( ´▽` )ノ |
| Archive Plash Speed Xtreme | [直达](https://t.me/ps4cn2) | 457 | TG游戏玩家开黑PY群 本群已开启自动驾驶,请勿刷屏,政治,开车。 NS群 |
| Haskell 中文交流 | [直达](https://t.me/haskellzh) | 369 | Haskell 是一种标准化的,通用的纯函数程序语言,有非限定性语义和强静态类型 误封申诉: 友情联盟 |
| Julia 编程语言交流 | [直达](https://t.me/julialangzh) | 296 | Julia 是一个面向科学计算的高性能动态高级程序设计语言。在许多情况下拥有能与静态编译语言相媲美的性能。 官网: 论坛(英文): 论坛(中文) |
| R 语言中文交流 | [直达](https://t.me/rprojectzh) | 222 | R 语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。 请勿发广告、推广、开车。 友情联盟 |

<a id="section-group-4"></a>
### 🔒 信息安全

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| AdGuard 中文 | [直达](https://t.me/AdGuard_chinese) | 5,570 | adguard.com 官方网站链接。AdGuard信息反馈意见。中文! 报告错误: agrd.io/report AdGuard微博: 加入AdGuard官方群!... |

<a id="section-group-5"></a>
### 🧰 软件工具

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Notion 中文社区 | [直达](https://t.me/Notionso) | 14,115 | 以 Notion 为主,围绕 Notion 效率工具、经验为辅。核心围绕提升个人生活、工作效率来进行讨论。 - 申请加入: 鼓励提问前多使用 Google 检索,若无答案,... |
| APP喵-群聊 | [直达](https://t.me/appmiao) | 10,508 | APP喵圈子: APP喵频道: 之前的评论区丢了,现在切换到这里 |
| GBox官方交流群 | [直达](https://t.me/GBoxTG) | 9,711 | GBox是一款免越狱可给ipa签名的工具,具有ipa补签、ipa安装下载、视频下载等功能 : |
| Appinn Talk 小众软件 | [直达](https://t.me/appinn) | 9,011 | 小众软件 appinn.com 本群链接: 新消息频道: 本群采用自动 bot 进行验证和广告拦截,未触发验证可尝试重新申请,如遇误杀请员: 公开群,禁开漏点车;... |
| 小众 App 交流群 | [直达](https://t.me/appfoundgroup) | 6,392 | You can view and join right away. |
| flomo浮墨卡片笔记 | [直达](https://t.me/flomoapp) | 5,207 | flomoapp.com 官方群 |
| APPDO 每日拍大腿说又后悔了群 | [直达](https://t.me/appdododo) | 4,628 | 投稿/推广/频道解封: 博客 浮生东京 个人生活频道 |
| CoolApk World | [直达](https://t.me/Riocoolapk) | 4,292 | 非酷安官方群组 群组日志 群组规定 The English group rules Telegram 中文补丁: 友情链接 KittenDev: |
| Price Tag Friends | [直达](https://t.me/pricetagapp) | 3,700 | 这是一个买买买群 官方公众号「PriceTag发现好应用」 twitter.com/GetPriceTag 微博:PriceTag应用推荐 |
| Pin apps | [直达](https://t.me/PinTG) | 3,297 | 在这里讨论 Pin 和 JSBox 等应用 提问前最好先看一下已发布的一些教程 平等而友好地交谈,撕逼请不要在这里撕 不要讨论黄赌毒或者其他违法内容 不要讨论任何形式的盗版行为,... |
| 简悦 - SimpRead | [直达](https://t.me/simpreadgroup) | 2,778 | 嗨,谢谢使用简悦,欢迎加入简悦「大家庭」 请同时订阅简悦的发布通道 有幸使用它并喜欢它,这是我的荣幸。 愿简悦可以给你带来阅读上的愉悦 |
| 翻译机器人讨论 | [直达](https://t.me/fanyi_group) | 1,678 | 中文翻译机器人讨论群。 机器人 开源 |
| TG中文包/搜索神器/中文群组/中文群 | [直达](https://t.me/google1j) | 1,020 | 在回复框输入关键词搜索资源 |
| TG中文频道/搜索神器/中文群组/中文群 | [直达](https://t.me/google1h) | 412 | 在回复框输入关键词搜索资源 |
| AppPie Group | [直达](https://t.me/AppPieGroup) | 352 | 频道 的关联群组。 进群记得回答验证问题 |

<a id="section-group-6"></a>
### ☁️ 网盘资源

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Google Drive 无限容量 | [直达](https://t.me/google_drive) | 23,449 | 本群提供无限容量 Google Drive 申请方法、大电影小电影电子书无损音乐等资源。 This group provides ways to get unlimited storage ... |
| 阿里云盘交流群 | [直达](https://t.me/yppshare) | 13,732 | 本群默认支持阿里云盘相关规定 |
| MugglePay 麻瓜宝crypto only | [直达](https://t.me/mugglepay) | 2,727 | MugglePay EN: MuggleWallet: MugglePay 商家系统: 认准管理员避免受骗: 签约及产品: 技术: MugglePay 商家后台 2.0 产品反馈收集 |
| PanoanDrive-免费离线下载资源至Google Drive | [直达](https://t.me/PanoanDriveBasic) | 2,067 | 频道: /mirror 下载链接 /cancel 取消(回复下载的消息) /status 查看下载状态 |
| 书墨资源分享交流群 | [直达](https://t.me/shumozyfx) | 643 | 书墨资源丨各类资源分享 频道 |

<a id="section-group-7"></a>
### 🎬 影视剧集

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| BDD@Tech | [直达](https://t.me/bigdongdongGroup) | 46,197 | 禁止任何政治内容&NSFW内容&攻击辱骂他人的行为将永久移至小黑屋 管理员有权在任何时候无理由以主观认为存在问题的将人员移至小黑屋 群内不设专属客服;... |
| TVBox 野生接口群 | [直达](https://t.me/MaoYingShi) | 24,041 | 猫影视野生接口,理性白嫖。 在群里发送" 接口 "获取配置。 关注频道 官方项目地址 |
| Zapro · 2026 | [直达](https://t.me/zaprobest) | 9,031 | 影视  /  软件  /  福利 频道: 主站: |
| 左罗·TG·交流 | [直达](https://t.me/zuoluotv) | 8,743 | ZUOLUOTV 专属 避免广告骚扰,请 说明来意,验证通过方可入群 TECH / TRAVEL / LIFESTYLE YouTube: ZUOLUOTV |
| 美剧电影吧 | [直达](https://t.me/meijukingdom) | 8,732 | 最新美剧日剧韩剧泰剧电影交流,115网盘技术交流 群规: * 禁止传播谣言 * 禁止撕逼/谩骂/人身攻击 * 禁止讨论免流/黄赌毒/政治/宗教 * 禁止广告/推广/黑产/灰产/暗网 |
| 频道资源福利分享 Chat | [直达](https://t.me/freemorebestchat) | 5,279 | 『资源福利分享』每天更新各类影视剧集网盘资源、福利活动、实用软件等。 频道所有内容均来源于网络,内容仅用于网友兴趣交流所用,所有图文版权均归原作者及其网站所有,特此声明。 频道 |
| YouTube—ImShuker | [直达](https://t.me/shukerz) | 4,142 | 先看 群内禁止发送色情图片、视频、链接 禁止讨论政治 理性发言,禁止互喷,团结友爱,保护小白 禁止广告,... |
| 谷歌、微软云盘讨论群 | [直达](https://t.me/google_win) | 3,360 | 自助购物 前缀修改 ★本群 黄 暴 广告 涉及政治话题 4K视频资源 少数派非官方群 hsx.me 影视资源站 Netflix  /  hulu账号交流: 苹果用户 |
| 电影爱好者交流 | [直达](https://t.me/Moviemarket_group) | 2,058 | 电影爱好者 |
| 呆萌影视 | [直达](https://t.me/dmysfx) | 1,925 | 更新热门资源,电视剧,电影,韩剧,动漫,广播剧,学习资料 |
| 谷歌云(Gcp)交流群 | [直达](https://t.me/Balancer166) | 1,466 | v2ray机场推荐:高墙期间依然坚挺!50+节点 全节点解锁 Netflix、HBONOW、Hulu !20元 一个月,客服全天7*24小时在线,注册免费试用 1小时!... |
| 微软云(Azure)交流群 | [直达](https://t.me/Balancer211) | 1,160 | v2ray机场推荐:高墙期间依然坚挺!50+ 全中转节点 全节点解锁 Netflix、HBONOW、Hulu !20元 一个月 优质售后,客服全天7*24小时在线,注册免费试用 1小时!... |
| NyanCAT - 1 2 3木头人 | [直达](https://t.me/NyanCaaaat) | 952 | 问就是老板带着小姨子,抬着服务器连夜跑的。 本站 全站 iepl 专线不过墙 绑定机器人进群,机器人在哪呢,我也不知道 Wiki啥都有,Emby观影已上线,他们都在置顶里。 随缘吧 |
| 阿里云交流群 | [直达](https://t.me/Balancer985) | 784 | v2ray机场推荐:高墙期间依然坚挺!国外场主搭建的全中转节点 50+节点 全节点解锁 Netflix、HBONOW、Hulu !20元 一个月 优质售后,客服全天7*24小时在线,... |

<a id="section-group-8"></a>
### 🎵 音乐音频

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 读舍 - 享受阅读时光 | [直达](https://t.me/shufm) | 9,062 | 读舍:享受阅读时光,畅谈读书心得 网站: 播客:苹果播客|小宇宙|Google Podcast|Spotify 搜索「读舍FM」 频道: 本群鼓励: - 发起具体书的讨论、分享书摘与心得 -... |
| 灭茶苦茶听众群 | [直达](https://t.me/ipn_miechakucha) | 6,541 | 不伦不类、不易流行。了解日本是不够的,我们要活用日本。 节目官网: 主播联络方式:miechakucha.li |
| 小米玩机交流群 | [直达](https://t.me/xiaomi6666) | 6,430 | 频道: 群聊禁色情、辱骂、广告、外挂、黑产! 买机注意: 1、去官网看参数,测评不建议看送测 2、购买前去酷安贴吧看用户评价 3、别买首发,... |
| HiFi音乐资源 | [直达](https://t.me/HiFiMusicResource) | 6,284 | 无损音乐资源收集整理自网络,只用于爱乐人交流试听。如果喜爱请支持购买正版音乐不可用于商业用途、下载试听后请于24小时内删除!鸣谢 提供网络支持!!!! 祝开心每一天!... |
| 网易云音乐 | [直达](https://t.me/yuncun) | 5,450 | 无音乐,不人生。音乐使人心情愉悦,音乐也是治疗伤心的药 |
| 音乐相声小说搜一下 | [直达](https://t.me/dianbotai) | 4,630 | 想听啥,群里发送关键词试一试,不仅限于音乐 |
| 内核恐慌 听众群 | [直达](https://t.me/pan_icu) | 1,646 | 一档号称硬核却没什么干货的信息技术主题娱乐节目的听众群 节目网站 |
| Tg唱吧总站 | [直达](https://t.me/changba_tg) | 1,597 | 电报唱吧总站,欢迎各位歌唱者入驻我群! 哼着哼着就来唱吧~~~ 电报音乐空间: Tg云音乐: 电报唱吧: Tg音乐站: 如有问题可员. |
| Spotify Addict Group | [直达](https://t.me/spotifyaddict) | 1,264 | Spotify Addict Group 本群邀请链接: Spotify 资讯频道: S.A.G 公共歌单: 歌单更新提醒频道 |
| 字谈字畅听众群 | [直达](https://t.me/TypeChat) | 1,139 | 《字谈字畅》(TypeChat)是全球首家用华语制作的字体排印主题播客,The Type 出品,开播于 2015年9月 |
| 博物志听众群 | [直达](https://t.me/museelogue) | 1,068 | 群主: 节目网址: bowuzhi.fm 通知频道: 微店:博物志 |
| 点歌台 音乐 听歌 music | [直达](https://t.me/tingge8) | 922 | 群规: 点故事等非音乐内容,违者禁言7天。点政治色情内容的直接踢出本群。如果对非音乐内容感兴趣可以私聊机器人点,请不要影响他人,谢谢! 电报最牛听歌机器人チノ喵 点歌请私聊机器人。... |
| 璃颜&红尘,伊人笑 | [直达](https://t.me/liyanhongchen) | 615 | 如果进群没有进群验证,也发不了消息, 请反馈到 ①本群你可以畅所欲言、但不要恶意对别人进行人身攻击; ②在本群请不要发低俗,色情之类的言论; ③禁止发言侮骂吧主以及吧内的任何的成员。... |
| 无损音乐及娱乐综艺视频 | [直达](https://t.me/losslesschat) | 586 | 资源发布频道 |
| 科技聚变听众群 | [直达](https://t.me/TechFusionChat) | 563 | Aftershow 的 Aftershow。 听众群: 节目通知: 节目官网:TechFusionFM.com 如何订阅:TechFusionFM.com/faq 反馈请寄:hi.com |
| 一天世界听众群 | [直达](https://t.me/ipn_yitianshijie) | 399 | 「我们用整体性的视角观察当代社会技术文化以及商业风景,对抗消费主义导向的论述,强调对技术和艺术的敏锐感受力,以及精神和肉体上的强健。... |

<a id="section-group-9"></a>
### 🎐 动漫次元

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 亿万同人唯一指定官方群 | [直达](https://t.me/ywtrzm) | 4,975 | 官网 官方推送频道 官方IG主页 字幕组大量招德语翻译、英语翻译、压制、西班牙语、时间轴、印地语、法语、葡萄牙语、英语、日语翻译等,有意加q群153293889 |
| Galgame同好会 | [直达](https://t.me/galgame) | 4,197 | 和谐、友爱、互助 规矩是死的,人是活的。 不允许极端主义存在 |
| 爷青结动画分享交流群 | [直达](https://t.me/yeqingjie) | 2,471 | 带大家寻找儿时的回忆!(禁止广告以及任何形式的推广) 爷青回动画分享频道: 爷青结动画组: 频道资源搜索机器人: 频道投稿机器人: 查看详细资源目录,请看频道置顶区信息 |
| 动漫 福利视频 里番 H动漫 成人 资源 二次元 | [直达](https://t.me/siwa9999) | 1,958 | 免费节点 ( AV( 舔耳asmr( 韩国伦理( 国产( H动漫( 丝袜( 主播( cos( |
| 酷漫404粉丝群 | [直达](https://t.me/CoolComic404_Fans) | 1,697 | 酷漫404发布频道 酷漫404粉丝群 |
| 亨嘉之会 二次元美图仓库 🅥 | [直达](https://t.me/hengjiazhihui) | 1,193 | 二次元/动漫/插画作品互动讨论,闲聊吹水群 进群需要进行人机验证,验证失败会被移出群组。 群规: 关联频道: 友情链接: 私聊群主 |
| 丝袜制服诱惑 福利视频 | [直达](https://t.me/dongman999) | 918 | 免费节点 ( AV( 舔耳asmr( 韩国伦理( 国产( H动漫( 丝袜( 主播( cos( |

<a id="section-group-10"></a>
### 🎮 游戏娱乐

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| ZH/EN HyperCeiler Chat | [直达](https://t.me/cemiuiler) | 12,361 | 进群务必先看本群置顶! - 建议使用 简体中文/繁體中文/English; - 请勿随意私聊管理(必要反馈除外); - 严禁真人、过度 R18 、NSFW 或其他令人不适的内容(SFW);... |
| 全球主机交流中心 | [直达](https://t.me/VPSchat) | 8,313 | 政治、色情、广告、黑产、推广群链接、各类形式aff、❨还大佬们一份干净的聊天环境❩ 其它随意、随意、随意 本群宗旨:不随意T人、不随意ban人 「非LOC官方、此乃mjj互助群」 如有误伤解... |
| NS Xbox PS PC游戏闲聊 | [直达](https://t.me/NintendoSwitchCN) | 4,200 | 我们一起来游戏 本群不欢迎任何广告,专注NS主机、Xbox主机和游戏若干年,欢迎常年在线的朋友加入管理,如果发现无关话题和广播踢无赦!欢迎活跃的NS游戏朋友申请管理,群里找群主即可 |
| 腾讯云VS阿里云 | [直达](https://t.me/TencentAliyun) | 3,785 | 欢迎加入阿里云☆腾讯云tg群 频道推荐:主机资讯分享 |
| 全球主机信息推送 | [直达](https://t.me/host_news) | 2,167 | 全球主机补货通知: 全球主机交易推送 |
| iGame 游戏交流群 | [直达](https://t.me/gamecn) | 1,484 | 天下玩家是一家。这里是游戏爱好者的,讨论游戏限于: * PC游戏(Steam),核心向游戏和独立游戏 * 主机和掌机游戏(PS, Xbox, Nintendo等) * 核心向手机独立游戏 频... |
| Nathosts主机交流群 | [直达](https://t.me/nathosts) | 1,168 | Nathosts官方讨论群 官网www.nathosts.com |
| 全球主机交易推送 | [直达](https://t.me/host_trading) | 967 | 全球主机信息推送: 全球主机补货通知 |
| 单机恐怖游戏总群 | [直达](https://t.me/danjikongbu) | 825 | 全宇宙最优秀的单机恐怖游戏交流分享 |
| MUG_ZH 泛用型音游中文讨论群组 说不定内含萌狼 | [直达](https://t.me/mug_zh) | 800 | 什么音游都可以讨论的地方!移动端/街机/主机/掌机/PC/甚至VR都可以!(当然要讲中文) *如果你的加群申请被拒,并且你确信你不是spam,请私聊群主 友情链接: *头像上次变化于2018/3/18 |
| MIR4传奇交流群 | [直达](https://t.me/mir4chinese) | 769 | 《传奇4》是由韩国WEMADE制作,游戏世界观延续经典线上游戏《传奇Online》,结合东方武学与韩系动作游戏美学,演绎全新的武侠世界 |
| CSGO | [直达](https://t.me/csgocn) | 686 | CS:GO 中文群组 关联频道: 禁止卖挂/禁止讨论开挂相关/一切红锁号及steam账号交易都不建议/饰品交易务必走平台/谈政治请注意尺度 |
| 游戏交流 | [直达](https://t.me/yxbymm) | 353 | 欢迎来交流游戏 |
| 内涵段子之狼人杀 | [直达](https://t.me/werewolfcn) | 271 | 游戏群规: 1: 游戏中挂了的玩家只要系统提示出来以后没有遗言,请别再说话影响其他娱乐的玩家,,遗言仅限被票出去的玩家~ 2:游戏进行中未参与游戏的群友请勿说话,... |

<a id="section-group-11"></a>
### ✈️ 科学上网

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Quantumult X | [直达](https://t.me/QuanXApp) | 58,416 | Quantumult X 群规如下,如有违反,立ban不解 政治,包括带节奏,擦边球等 盗版,包括讨论、推荐、分享破解、黑卡等 广告,包括未经允许的群组/频道推广等 色情,... |
| Loon-0x00 | [直达](https://t.me/Loon0x00) | 37,058 | 这里是Loon的官方群组 官方网站 官方文档 官方教程 商店地址 禁止讨论共享、盗版、破解、免流、黑卡、政治及色情! 禁止人身攻击、任意广告及令人反感的任何内容 |
| 免费翻墙加速器交流群 | [直达](https://t.me/gouwu) | 35,477 | You can view and join right away. |
| Surge 交流 | [直达](https://t.me/loveapps) | 29,582 | Surge 使用交流分享(限正版!) 本群话题包括但不限于 Surge 的使用与交流,但禁止谈论政治,色情(擦边也不允许),盗版,破解等话题!禁止广告及群链。文明交流禁止人身攻击!... |
| 老王讨论群 | [直达](https://t.me/wangvpn_user_chat) | 21,725 | ★本群组可以谈论广泛话题,请务必对各方的言论及立场给予必要之尊重。 ★本群禁止→中国政治 / 色情 / 血腥暴力 / 暗网 / 社工 / 黑色/灰色产业 / 人身攻击 / 谣言 / 其他代理 / 机场 / 邀请链接 / 广告 ★请注意... |
| 科学上网技术研究会 | [直达](https://t.me/kxswjs) | 17,301 | 文明和谐,诚信友善,自由平等,公正守纪。 ========注意事项======== 禁止政治宗教、黄赌毒等话题。 禁发布色情、暴力及血腥内容。 不得发布清真信息及垃圾广告。... |
| 搬瓦工 (BandwagonHost) | [直达](https://t.me/BandwagonHostGroup) | 10,428 | 搬瓦工中文网,除了黄赌毒、政治、反动、清真、广告外,话题随意。禁止谩骂、人身攻击,禁止发布任何交易信息,违者永封。 网址: 短域名: 补货推送频道: 如需发送图片 |
| 逗比据地根 | [直达](https://t.me/doubi) | 7,346 | 一群逗比的大家庭! 请遵守以下群规: - 禁止刷屏 - 禁止传播谣言 - 禁止打广告 (包括机场) - 禁止讨论政治/宗教 (100%撕逼) - 禁止讨论/宣传任何 VPN/代理网站 - 禁... |
| Vultr 用户群 | [直达](https://t.me/vultr_group) | 5,956 | Vultr 用户群,非官方 群规: * 禁止传播谣言/盗版 * 禁止撕逼 (谩骂/人身攻击等) * 禁止讨论免流/黄赌毒/宗教/政治/键政 * 禁止广告/黑产/暗网/刷屏/色情/开车/NSFW |
| TG技术党 | [直达](https://t.me/MRHXPJ) | 5,727 | 本群主题:包括但不限于关于美区APP代购、TIKTOK、机场、吹水、不露点NSFW等…同时讨论任何有关捷径规则、JSBOX脚本、旧版软件抓包下载、付费软件破解、开车软件分享和破解VIP等… ... |
| ShadowsocksR 讨论组 | [直达](https://t.me/ssrunofficial) | 5,163 | 主要讨论技术与安全相关话题 欢迎: - 技术相关讨论 - 安全相关讨论 限制: - 无关话题讨论 请适度。管理员可视情况删除消息,踢出成员或封禁成员。... |
| Ubuntu 中文 | [直达](https://t.me/ubuntuzh) | 5,047 | Ubuntu 中文 Language: Chinese (Simplified and Traditional) 加入即视为您遵守以下规则 禁止广告、招聘、引战、开车、拼车、政治、黑产、灰产... |
| BIS科学上网 | [直达](https://t.me/BISproject) | 2,268 | Browse Internet Security科学 上网 官方Telegram频道: 官方Telegram群组 |
| 大佬吹牛群-DDOS | [直达](https://t.me/xddos0) | 1,600 | XDDOS压力测试: 机场测压实验室: |
| 快看 制服护士老师制服诱惑 | [直达](https://t.me/freevray) | 1,434 | 免费节点 ( |
| Adguard CN | [直达](https://t.me/adguard_cn) | 1,433 | Adguard 的非官方中文群组。 官网: 频道: 群组: 合租群组: 合租频道: 禁止开车!色情!钓鱼!机场广告!任意广告!粗鄙之语,绝对禁止! 禁止讨论/乞讨/分享盗版!... |

<a id="section-group-12"></a>
### 🪙 加密货币

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 币安官方中文群 | [直达](https://t.me/BinanceChinese) | 227,707 | 币安官方中文TG群 谨防假冒! 私聊您的都是骗子 所有涉及黄、黑、赌、灰、政治的话题都将被踢出 群内禁止发布不实谣言及其他交易所截图 请大家共同维护社区秩序,营造友好的讨论环境,谢谢!... |
| 期货与期权 Derivatives | [直达](https://t.me/CNderivatives) | 6,431 | 期货、期权和各类金融交易品的投机与套利 股票期貨期權權證ETF 股票期货期权权证ETF |
| FriendChCodeList | [直达](https://t.me/FriendChCodeList) | 6,255 | 一个频道友链交换处! 大家可以通过 进行投稿,介绍自己的频道! 目前的现行规则: 0. 为了防广告,当投稿被通过时才能获得发言以及点赞点踩的权限 1. 拒绝币圈/引流/占坑等无营养频道 2.... |
| 加密货币与区块链讨论群 | [直达](https://t.me/onBlockchain) | 3,665 | 加密货币与区块链频道 |
| 加密货币爱好者 | [直达](https://t.me/twittercryptofans) | 1,578 | 加入条件:价值投资,长线,不加杠杆不做合约,所在地合规平台交易,只投输得起的钱。新入群请翻看群聊。基础问题去问谷歌。推荐项目请先说出依据。发广告立斩。不要相信群友私信。勿用语音。... |
| 合租小车 | [直达](https://t.me/TogetherHub) | 969 | You can view and join right away. |
| CTG 中文社区 | [直达](https://t.me/CTGgroup) | 429 | 新一代以区块链技术为基础的公链应用平台。CTG将区块链技术带入到日常的真实应用当中。CTG同时满足了企业和用户的高TPS需求。 注:进CTG官方微信群请加客服号:ctgcoinonblockchain |

<a id="section-group-13"></a>
### 📚 学习阅读

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 电子书/听书/期刊杂志/课程分享 | [直达](https://t.me/sharing_books4u) | 46,994 | 商务 搜书 导航 课程 |
| wikipedia-zh | [直达](https://t.me/wikipedia_zh_n) | 25,030 | 本群組為中文維基百科聊天室,主要讨论维基百科站务。 本群另有IRC及discord两群,由转发机器人互联,对话互相可见。平日里,群中总是有管理员和资深用户在线,所以可以随时提问,... |
| 小声读书 | [直达](https://t.me/what_youread) | 13,330 | Just AI and Read |
| 杂志 考研 考公 互助群 | [直达](https://t.me/Waikan2023) | 6,842 | 各国期刊,各种考试、兴趣期刊! 频道Channel |
| 读书分享 | [直达](https://t.me/dushufenxiang_chat) | 6,159 | 群规: 1. 请友好交流,讨论请尽量点出重点,想好再说。无论是读书分享,影视音乐,科学自然,旅游轶事,人生感悟,社会话题,都欢迎分享,讨论。 2. 请善用引用,合并精简,促成沟通。... |
| zread 读书会 | [直达](https://t.me/zread) | 4,993 | 欢迎书友们 或许你正在寻觅, 那一隅祥和。 或许你正在等待, 那心之静谧。 畅游书海,以书会友。 内容建议以具体书为基, 分享自己有深度的感想等, 避免发起与读书无关的话题。... |
| CYLINK - 退退退 | [直达](https://t.me/cylink) | 4,945 | 次元链接 / 40Gbps带宽冗余 / IEPL专线 / 线路齐全的网络传输服务商 官方域名: 跳转域名: 备用域名: IP访问: 官方教程: 辅助教程: 优惠码: M8KUGnxo (8%每个用户限一... |
| 好读 ReadFine交流总群 | [直达](https://t.me/ReadfineChat) | 4,464 | 频 道 好读提供电子书一站式阅读体验,一键下载,享受读趣。在这里因为有您的陪伴,阅读变得并不孤单 |
| 中英语言学习 Learning Chinese & English | [直达](https://t.me/LinguisticAcademy) | 3,332 | 1. 本群旨在汉语和英语的学习 2. 你可以聊任何话题,但请不要让人感到不适 3. 请带着爱帮助别人,或者带着感恩求助于别人 1. The purport is to learn Chine... |
| SaltyLeo的博客讨论组! | [直达](https://t.me/SaltyLeo_blog) | 2,825 | 这里是SaltyLeo的博客讨论组,在这里你可以分享技术,讨论技术,学习技术! 政治、广告和互喷。 博客就叫SaltyLeo‘s Blog哦~ 地址在这 |
| 外语学习跑路群 | [直达](https://t.me/paoluqun) | 2,704 | 润学社群! 大家一起讨论移民政策、各国签证、居留计划,一起跑路吧! 被机器人误封解封联系 |
| 中文独立博客 | [直达](https://t.me/indieBlogs) | 2,107 | Chinese independent blogs |
| 硬核英语/Hardcore English | [直达](https://t.me/hardcoreng) | 1,238 | 频道: 有一两万个词汇量,然而看剧还需要字幕,这可能是因为你的词汇量还不够。 定期分享工具、方法,讨论、解答问题。 多平台英语词典有Mdict/Goldendict后者部分开源,... |
| 知乎 | [直达](https://t.me/Zhihu1) | 544 | 永远要有求知欲 |

<a id="section-group-14"></a>
### 🎨 创意设计

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 秋水逸冰 | [直达](https://t.me/qiushui2018) | 2,769 | 欢迎各位群友自由交流,话题随意,但禁止黄赌毒,禁止讨教 DDCC,禁止谩骂和人身攻击,禁止钓鱼倾向言论,禁止传播没有依据的谣言。 未经管理人员同意禁止打广告,违者随机飞机票。 公告频道 |

<a id="section-group-15"></a>
### 🏀 体育运动

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 体育爱好者 足球 篮球 NBA CBA 交流 | [直达](https://t.me/tiyu365) | 4,063 | 体育爱好者 / 足球 / 篮球 / NBA / CBA / 交流 群内全面禁止广告/色情/暴力/政治内容 |

<a id="section-group-16"></a>
### 👗 生活消费

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 好棒 羊毛超级搜 | [直达](https://t.me/dajiajia) | 12,077 | 捡漏线报QQ微信群 羊王频道 羊毛超级搜群组 福利超级搜网站 tb.applebl.com 小火箭共享ID 独享ID 兑换码 wohaobang.cn 频道主 好棒的羊王 羊毛超级自助搜 |
| 全球Sim卡爱好者交流群 | [直达](https://t.me/simfans) | 7,193 | 全球Sim卡爱好者交流园地! : 购买香港澳门日本卡联系: 若双向请用机器人联系我: |
| Amazon 海淘购物交流群 | [直达](https://t.me/firstAmazon) | 5,523 | 美亚(美国亚马逊)代购、拼单、转运、优惠劵、Fire TV Stick 团购、海淘交流 |
| 羊毛党--TG支部 (薅死羊不偿命系列) | [直达](https://t.me/cn_coupon) | 5,194 | 薅死羊不偿命系列 |
| 广州粤语电报群 Cantonese Group | [直达](https://t.me/GuangzhouIT) | 4,375 | 广州,系鼓励用粤语嘅同城。本群只用于娱乐话题及日常交流,原则上唔允许政治话题,深夜时分白话讲嘅例外。 ban一周起步: 同个人不间断同屏幕刷屏消息 (一屏幕装不下=刷屏, 发相同信息3次以上... |
| 可爱的美少女们 | [直达](https://t.me/flgirl) | 4,252 | 定期开放 希望可以收集到更多的高颜值美少女 群规定: 1.禁止低颜值图或视频 2.禁止血腥暴力 3.禁止幼,兽 等重口内容 4.禁止政治类内容 5.等待添加 颜值 身材 拍摄手法 缺一怎能称... |
| 松下尼康 摄影 | [直达](https://t.me/cnphotog) | 2,011 | 这里是 的摄影群 欢迎对各种摄影作品、技法,题材和器材的讨论! 本群禁止除群主硬点以外的广告 讨论时请尽可能就事论事,禁止挑衅和人身攻击 欢迎关注群主的频道: (《摄影新手指南》 筹备中) |
| 奇点 | [直达](https://t.me/jidian) | 1,641 | 奇点用户群! 这是一个面向奇点用户的群组,用于交流奇点日常使用、通知并确认相关问题或故障、收集需求和激发想法。 你可以自由地加入、退出或邀请他人,也可以交流其他围绕移动互联网的话题,... |
| android Discuss 辣鸡谷歌还我甜点 | [直达](https://t.me/AndroidDiscuss) | 1,528 | 日常闲聊水 和其他任意讨论瞎扯 少喷政治多发情 消歧义 少>别大量洗版刷屏地 喷>无脑骂负面内容 少喷>可以适量合理友善交谈认真讨论 **友善地 |
| HanHan小卖铺 | [直达](https://t.me/hanhans2) | 758 | 佛系购物 |
| 羊毛活动 | [直达](https://t.me/Groups_cn) | 717 | 网站:www.fanli.me |
| 各种奇奇怪怪的优惠买买买 | [直达](https://t.me/shoppingwdiscount) | 647 | 本群会不定时的发一些奇怪的优惠,不限地区。任何人能都可以发。 不包含此群的优惠信息有:虚拟货币,衣服包包化妆品类别,各种刷粉点赞 |
| 电报摄影部 | [直达](https://t.me/shashinbu) | 425 | 与光做游戏,便是摄影的真谛 |

<a id="section-group-17"></a>
### 🌍 地区社群

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 泉城济南电报总群 🅥 | [直达](https://t.me/jinan_tg) | 24,928 | 本群禁止广告,广告必Ban!禁止所有违法犯罪行为 本群聊天获取钢镚,数量共享至开工群! 报告搜索机器人(开工机器人 ) 开工电报群(严选) 泉城济南圈(频道) 关注以上频道才能发言!关注频道自动解禁 |
| 大学联盟 𝗨𝗻𝗶𝘃𝗲𝗿𝘀𝗶𝘁𝘆𝗔𝗹𝗹𝗶𝗮𝗻𝗰𝗲 | [直达](https://t.me/UniversityAlliance) | 14,210 | 大学联盟 将关闭公开群组,新的私密群组已成立。 加入方式请查看: Created on 2019.04.16 |
| 西安电报群 | [直达](https://t.me/XianCity) | 10,002 | 入群必读: 本群用于讨论西安相关的衣食住行等话题,同时也可畅聊其他话题,原则上不做话题及聊天内容的限制。但是,为了不给广大群友带来困扰,... |
| 墙外 四川交流群 | [直达](https://t.me/civhuanglaoxiao) | 2,656 | 本群为广大四川老乡到菲律宾工作生活提供一个交流平台,请不要打广告 ,群不可出现任何广告形式 包括链接 图片 但不限于 昵称 签证保关回程合作 |
| 湖南电报群 | [直达](https://t.me/hunantg) | 2,381 | 本群创建于2018年,一直致力于打造优质、有序的中文。 欢迎海内外华人朋友! 群内交易需谨慎,不要被骗财骗色。 禁发广告和刷屏。 禁毒,任何与毒品相关的信息和人员必踢。... |
| 河南周口 | [直达](https://t.me/zhoukou) | 1,728 | 本群组由周口各地老乡 大学生 群体组成 可自由交流周口地区相关的任何话题 河南互联: 河南项城: 河南郑州: Created on 2021.10.01 |
| 湖南大学 HunanUniversity | [直达](https://t.me/HunanUniversity) | 697 | 本群受广告骚扰影响,暂时关闭,请加入 交流,谢谢 |
| 愚民小鎮 保衛香港! @werewolfbot (入群請先看規定) | [直达](https://t.me/twWolf) | 437 | 小鎮村 重要說明請看頻道 群組規定 愚民小鎮群務申訴區 |

<a id="section-group-18"></a>
### 💬 闲聊交友

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| V2EX 交流群 | [直达](https://t.me/V2EXPro) | 19,170 | 程序员、分享创造、问与答 |
| 树洞频道评论区(8度群组) | [直达](https://t.me/abc999222) | 18,182 | 390K频道 特色频道 破解软件 IOS破解 |
| 𝒍𝒊𝒍𝒚的聊天室 | [直达](https://t.me/lilydeyaa) | 15,911 | lily的聊天室(退群自动ban) 频道: 为保证聊天室的运行特制定以下群规 无聊政治 硬核色情 辱骂仇恨言论 不尊重他人的信仰(你可以不信,... |
| 小小布吉岛闲聊群 | [直达](https://t.me/bujidaochat) | 6,975 | 问题咨询 账户查询 |
| 东京IT技术者交流群 | [直达](https://t.me/TokyoIT) | 4,351 | ❴TokyoIT讨论组❵ 畅所欲言 滔滔不绝 色情、广告、黑产、推广群链接、各类形式aff、❨还大佬们一份干净的聊天环境❩ 其它随意、随意、随意 本群宗旨:不随意T人、不随意ban人 如有误... |
| 滕州 Telegram 办事处 | [直达](https://t.me/tengzhou) | 3,512 | 谈天说地 肆意吹水 |
| 内涵段子之闲聊群 | [直达](https://t.me/OverseasChinese) | 2,443 | 狼人杀群: 猜大小,21点,赛马等游戏群: 糗事百科: 笑掉大牙 :纯文字段子频道 闲聊群: |
| 平壤卫视聊天群 | [直达](https://t.me/Orz_zayu) | 2,355 | 已开放,员通过审核 禁止广告、键政、对线、乞讨、肛交。 频道 |
| OKAB3吹水 | [直达](https://t.me/OKAB3Script) | 866 | 除以下以外话题不限 政治 |
| V2EX后花园 v2.0 | [直达](https://t.me/goV2EX) | 786 | 纯净版V2群:谢绝政治话题讨论,专注技术和侃大山。 常年踢不活跃用户,误封申诉 |

<a id="section-group-19"></a>
### 🔞 福利吃瓜

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| 北京 | [直达](https://t.me/beijingz) | 31,920 | 禁止传播谣言/盗版 禁止撕逼/谩骂/人身攻击 禁止广告/推广/黑产/灰产/暗网/刷屏/色情/开车/NSFW 搜索索引 话题 上海 广州 深圳 武汉 杭州 重庆 郑州 天津 成都 中国 |
| Google Voice 交流群 | [直达](https://t.me/googlevoice) | 14,884 | 讨论 Google Voice 号码使用的方法、技巧,以及提供相关服务资讯、商家介绍等 不允许任何推广(仅 GV 允许有限度推广,具体细则看置顶),政治内容,各类人身攻击,引战,NSFW,... |
| 中文吃瓜搜索-信息搜索导航资源 | [直达](https://t.me/beijingxiuchea) | 1,637 | 在回复框输入关键词搜索资源 |

<a id="section-group-20"></a>
### 🗂️ 综合导航

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Telegram 新手帮助 | [直达](https://t.me/Newbie_Chat) | 10,995 | 「Telegram 新手指南」频道 的附属群组,主要用于频道内容反馈与建议、对频道内未提及问题的社区支持与帮助。 群组规则 |
| Telegram 新手帮助 | [直达](https://t.me/newbie_chat) | 10,984 | 「Telegram 新手指南」频道 的附属群组,主要用于频道内容反馈与建议、对频道内未提及问题的社区支持与帮助。 群组规则 |
| TG 简中交流(水)群 | [直达](https://t.me/cnpub) | 9,337 | Telegram 简体中文 **非官方** 社区组 相关项目: Telegram 简体中文语言包: TGCN-群组索引计划: TGCN-MTProxy分享: 请远离政治,友善交流。... |
| 电报指南 & 瞭望台 | [直达](https://t.me/TgTrillions) | 2,263 | 电报指南&精品排行榜 理智与情感,生活与命运 信息技术、解决问题、探索发现 万物系统、机械控制、社会科学 人类知识、生活娱乐、经济商业 禁止群内灌水/广告/刷屏/脏话/口战 投稿和反馈区,... |
| DEVONthink Chinese | [直达](https://t.me/DEVONthink) | 309 | DEVONthink用户交流,兼DT2简体中文语言包项目( )反馈 |

<a id="section-group-21"></a>
### 🌐 综合其他

| 名称 | 链接 | 订阅数 | 简介 |
| --- | --- | ---: | --- |
| Telegram 中文社群 🅥 | [直达](https://t.me/tgcnx) | 170,354 | Telegram 中文/汉化/知识/教程, 科技, 机场, 科学上网...... 群规: * 禁止谣言、盗版、广告、刷屏 * 禁止谩骂、人身攻击、血腥暴力内容 * 禁止免流、开盒、黑产、灰产、暗网、赌博 * 禁止宗教、政治、键政、黄赌毒、色情及NSFW * 文明交流,违规者将被禁言或封禁 📢Telegram 中文频道 @tgcnz 👥Telegram 中文大群 @tgcnx 👥Telegram 中文二群 @tgzhcn |
| [合租社群]Netflix / YouTube / Spotify  / office365 / Hbo / Surge / 美剧 / 等音乐影视聊天机场电影盒子软路由 | [直达](https://t.me/hezu1) | 75,045 | 合租指南: https://hezu.wiki 敬请关注通知频道 @hezu2 📣聊天群规如下: 1️⃣本群属于合租交流群,禁止讨论政治,宗教,种族歧视,色情相关内容。 2️⃣建议先Google之后再提问,对于频道置顶中已解答的问题不会重复回复。 3️⃣本群为交流群,不参与任何的商业活动,不买卖任何商品(机场/VPS/各种号码账号等等) 4️⃣合租有风险,打钱需!谨慎,建议支付宝加好友预约转账,月付防止跑路,本群只提供平台,被骗后果自负! ⚠️吵架滋事者一律踢 |
| Official Geph Users 迷霧通官方用戶群 | [直达](https://t.me/gephusers) | 45,052 | Announcements  /  通知頻道 Group rules  /  群規 違規處理條例 客服机器人 |
| 梓澪の妙妙屋 | [直达](https://t.me/mio_house) | 21,571 | 一览: 有问题请联系 |
| KinhDown 加速⚡️永无止境⚡️ | [直达](https://t.me/KinhDownChat) | 20,182 | PikPak云盘: https://pikpak.kinh.cc KinhDown: https://kinhdown.com 频道: @KinhChannel 讨论群: @KinhDownChat |
| iBeta 尝鲜派 官方群 | [直达](https://t.me/ibetame) | 18,173 | iBeta 尝鲜派(iBeta.me)的官方群组。欢迎大家关注 |
| Via Official Group | [直达](https://t.me/viatg) | 12,493 | This group is deprecated, please join the new group: 该群组已废弃,请加入新群组 |
| 阿里巴巴影业集团 粉丝群 | [直达](https://t.me/alyd_g) | 11,443 | Exchange some thoughts about Alibaba Pictures. |
| 全球主机交流中心 | [直达](https://t.me/vpschat) | 8,305 | 【禁止發布準則】🈲政治、🈲色情、🈲广告、🈲黑产、🈲推广群链接、🈲各类形式aff、❨还大佬们一份干净的聊天环境❩ 其它随意、随意、随意 本群宗旨:不随意T人、不随意ban人 「非LOC官方、此乃mjj互助群」 如有误伤解释请联系管理员谢谢 提醒您: 梯子千万条,安全第一条 扶墙不规范,亲人两行泪 |
| 中转群005 –请转移 | [直达](https://t.me/Balancer996) | 7,903 | You can view and join right away. |
| BlockBeats Chat | [直达](https://t.me/BlockBeats_App) | 7,304 | 欢迎进入BlockBeats |
| mini club | [直达](https://t.me/Orz_mini) | 7,224 | mini频道 |
| 流浪防区 China_irl | [直达](https://t.me/China_irl) | 6,340 | 流浪防区 China_irl 官方群,已与r/china_irl太监区割席。已割席!*太监和浪友别来错地方* 1. 不要人身攻击、各类歧视仇恨、地图炮及*开盒社工库直接ban*,... |
| Freetrial.store | [直达](https://t.me/FreetrialStore) | 6,081 | 售前售后请私聊 本群通知频道 自助购买链接 |
| TG小树屋|Chat | [直达](https://t.me/wolfgang88) | 5,466 | 一秒记住我小树屋全拼 @xiaoshuwu 旨在分享全网优秀热门资源,包括但不限于破解软件,机场订阅,VPN,TG技巧,热门游戏等等等。 👉频道 @xiaoshuwu 👉私聊/投稿/合作 @XiaoShuwu_Bot |
| Open Source Community | [直达](https://t.me/open_source_community) | 5,153 | 本群禁止黑灰、广告、极端、露骨! 可咨询: 1、V2ray 全平台安装; 2、内网穿透(zerotier-one,frp...); 3、透明代理(debian搭建v2ray旁路网关); 4、华为手机谷歌框架; 5、Linux ,Windows,Chroms OS安装; 6、开源软件探讨与分享(好的付费软件也可,破解版软件请详细验证后再分享); 7、宇宙文明观察; 8、情感交流; 可继续补充话题~ 我们希望每位成员在线时都是活跃且有价值的,为彼此带来欢乐和充实。 |
| Yummy's Small Talk | [直达](https://t.me/yummy_best) | 5,122 | 群组旧名:I'm So Lonely * 禁止传播谣言/盗版 * 禁止刷屏/撕逼/谩骂/人身攻击 * 禁止黄赌毒/政治/宗教 * 禁止广告/机场链接/aff * 禁止黑产/灰产/暗网/色情/开车/NSFW 解封/误封联系: @yummybest_bot |
| 豆瓣讨论 | [直达](https://t.me/douban_discuss) | 4,722 | You can view and join @douban_discuss right away. |
| ImmTelecom 签到专用群 | [直达](https://t.me/immtelecom_chat) | 4,172 | You can view and join right away. |
| 离港[̲̅V̲̅I̲̅P̅]候机室 / 机场交流🅥 | [直达](https://t.me/airport_chat) | 3,866 | 机场交流 / 机场那些事 / 机圈吃瓜 群规: ⚠️平等而友好地交流,营造良好聊天氛围! ⚠️主要讨论机场相关事宜,当然也欢迎讨论其他不违反群规的内容! 🚫禁止键政!禁止键政!禁止键政! 🚫禁止撕逼/谩骂/人身攻击 🚫黄赌毒/宗教/血腥/暴力 🚫禁止广告/黑产/暗网/NSFW PS:如有违规者,大家可以@管理员进行举报,美好聊天环境大家共同营造,谢谢! 离港机场收录频道: https://t.me/airport_cn |
| Bigo社区群 | [直达](https://t.me/bigo_tool) | 3,279 | You can view and join right away. |
| LoopDNS Plan | [直达](https://t.me/loopdns) | 3,263 | LoopDNS Plan讨论组 |
| HN 中文社区 | [直达](https://t.me/hn_china) | 3,258 | 欢迎讨论技术,创业等话题,莫商国是,莫开车及发布盗版资源;) |
| WallStreetBets华尔街中文官方交流群 | [直达](https://t.me/WSBetsZH) | 3,092 | WallStreetBets 推特: & 脸书 |
| Telegram 中文社群 🇨🇳 | [直达](https://t.me/haijiaosheque) | 3,041 | 回复关键词搜索各种资源Telegram 中文/汉化/知识/教程, 科技, 机场, 科学上网...... 自由是有规则的,没规则的自由是混乱。 禁言是机器人干的,退群重新加入即可。 |
| NF讨论群 | [直达](https://t.me/netflixchina) | 2,624 | You can view and join @netflixchina right away. |
| SShuren-Base | [直达](https://t.me/shaoshurenx) | 2,616 | 麻烦大家都加一下新群: 故若无法更新订阅可以更新订阅地址。有任何问题直接网站上工单。 你可以在群里发送“群简介”三个字获取原始简介内容。... |
| LD收藏夹交流 | [直达](https://t.me/LdFriend) | 2,551 | 群规则,包含并不仅限 1、封禁【博彩/赌毒/宗教/政治/键政/黑产/灰产/违法色情/暴力】 2、删除+警告【Aff/隐私】 3、至于NSFW🔞,只允许发送链接,禁止贴图+媒体(删除+警告) 不喜勿喷! 链接收藏: @LDList 下载链接: @LinksDownload 频道联系方式 投稿、误封、合作等可联系 私聊: @AmeliaKBot 邮箱: LDlist@duck.com |
| S.EE 中文粉丝群 | [直达](https://t.me/smms_images) | 2,404 | 关于 S.EE 中文粉丝群 的相关讨论与分享频道。 |
| Blinkload 售前咨询群 | [直达](https://t.me/thessrgroup) | 2,350 | Blinkload官方通知频道: Blinkload 7*24h人工 Blinkload 账户助手: Blinkload无墙官网: 绑定TG: (进该官网登陆点开个人中心绑定) 本群仅供售前... |
| 读者 | [直达](https://t.me/duzhe) | 2,011 | 读者群暂时不受理入群申请 请先加入 等待验证 |
| Ruby 中文圈 | [直达](https://t.me/rubycn) | 1,519 | You can view and join right away. |
| POUT的私人小屋 | [直达](https://t.me/Brahmanjg) | 1,339 | You can view and join @Brahmanjg right away. |
| 业余无线电爱好者HAM 中继查询 | [直达](https://t.me/ham002) | 1,196 | 本群为HAM业余无线电内容讨论为主,禁辱骂行为。 如果自动入群测试出现故障,请主动联系以下管理员手动批准入群。 本群链接 请员 备用入群 备用入群 备用入群 |
| Technical Blog 技術博客 | [直达](https://t.me/Technical_Blog) | 1,104 | You can view and join right away. |
| SSRSpeed N 使用交流 | [直达](https://t.me/SSRSpeedN) | 888 | You can view and join right away. |
| ExCloud | [直达](https://t.me/excloud) | 820 | 网址: 公告群 |
| SPhard交流群-不谈政治-不吵架 | [直达](https://t.me/sphard) | 818 | 网站: YouTube: bilibili: X: |
| 创造者日报 | [直达](https://t.me/creatorsdaily) | 810 | You can view and join right away. |
| 印度伟哥药店 | [直达](https://t.me/shenyebaojianshi666) | 802 | You can view and join right away. |
| 酷安 | [直达](https://t.me/cool_apk) | 709 | 禁止人身攻击 |
| 即時投資消息推送 | [直达](https://t.me/touzi8) | 691 | 讨论投资股市的群 English: 繁體中文: 簡體中文 |
| IINA 中文 | [直达](https://t.me/IINAUsersZH) | 682 | IINA 的官方中文讨论群 此群禁止广告 |
| 雷神之锤 | [直达](https://t.me/thorshu) | 658 | Thor 官方群已转为私群,本群仅仅是为了保护官方群原来的 username 而开,不做任何话题讨论且随时可能解散 |
| 数理化生实验室 | [直达](https://t.me/mpcblab) | 620 | 理科学科(数学/物理/化学/生物/天文和其他自然科学)相关话题 |
| Handshake中文社区 | [直达](https://t.me/handshake_cn) | 580 | 一群为了Handshake(去中心化域名协议)聚集到一起的人 |
| Linmi 简日志 | [直达](https://t.me/cmemo) | 565 | 探索未知,迭代新知,沉淀认知。 访问简日志 |
| 杰哥搜索/杰哥中文 | [直达](https://t.me/MFJD99) | 559 | You can view and join right away. |
| S&D两位先生 | [直达](https://t.me/Science_Democracy) | 519 | 自由与进步的脚步永不停息! 这是最好的时代,也是最坏的时代;这是智慧的时代,也是愚蠢的时代 It was the best of times, it was the worst of tim... |
| DGEN Labs 中本街社区 | [直达](https://t.me/SatoshiStreetBetsZH) | 482 | 中本街中文社区 Chinese (ZH) 股票讨论左转 群组被踢申诉 |
| 这里有只猫 | [直达](https://t.me/glados_network) | 374 | You can view and join right away. |
| TenVM/ToSpeed 交流群 | [直达](https://t.me/tenvmgroup) | 257 | 公告板 |
| Launch Center Pro 交流分享 | [直达](https://t.me/lcpapp) | 244 | Launch Center Pro 交流分享群,欢迎大家分享使用技巧。除了盗版、18+ 、打广告和政治,其它内容随意。禁止低智商内容以及互相攻击 |
| 。 | [直达](https://t.me/SitandRelaxGroup) | 219 | 本群组从属于坐和放宽生态系统 从此处: 开始可查看坐和放宽的所有频道/群组 |
| 翼起乐 | [直达](https://t.me/YiQiLe) | 216 | 我希望群里的人,常能感到开心快乐,品行、生活品质都越来越高 |

## Star History

[![Star History](https://starchart.cc/jackhawks/rectg.svg?variant=adaptive)](https://starchart.cc/jackhawks/rectg)


================================================
FILE: package.json
================================================
{
    "name": "rectg-root",
    "private": true,
    "scripts": {
        "install": "cd web && npm install",
        "build": "cd web && npm run build"
    }
}

================================================
FILE: requirements.txt
================================================
requests>=2.31.0
beautifulsoup4>=4.12.0
lxml>=5.0.0
opencc-python-reimplemented>=0.1.7
emoji>=2.0.0
markdown>=3.0.0


================================================
FILE: scripts/categorize.py
================================================
#!/usr/bin/env python3
"""
文本清洗与精细化分类脚本 (categorize.py)
用于清理标题和描述中的 Emoji、冗余文本,并基于关键字进行自动细分分类。

用法:
    python3 scripts/categorize.py
"""

import sqlite3
import re
from pathlib import Path
import emoji

DB_PATH = Path(__file__).resolve().parent.parent / "data" / "rectg.db"

# ---------------------------------------------------------------------------
# 0. 有害内容及语言过滤
# ---------------------------------------------------------------------------

HARMFUL_KEYWORDS = [
    "博彩", "赌场", "资金盘", "跑分", "枪支", "迷药", "催情", "迷幻",
    "洗钱", "提现", "查档", "开房记录", "社工库", "呼死你", "轰炸机",
    "菠菜", "嫩模", "外围", "约炮", "迷奸", "代开发票", "黑产", "网赚",
    "色流", "彩票", "赌博", "百家乐", "六合彩", "棋牌", "网赌", "黑客", "破解盗刷",
    "免费节点", "翻墙", "机场", "免流", "梯子", "科学上网", "v2ray", "shadowsocks",
    "莞式", "全套", "品茶", "修车", "同城群", "约妹"
]

# 用于匹配“禁止XXX”的正则,这些词语如果出现在“禁止”、“严禁”之后,则属于正常的群规,不应该被判定为有害频道
PROHIBITED_CONTEXT_REGEX = re.compile(r'(禁止|严禁|不准|拒绝|谢绝).*?(机场|翻墙|梯子|节点|免流|黑产|广告|博彩|赌博|色情|政治)')

def _remove_prohibited_context(text: str) -> str:
    """如果文本中出现 '禁止机场' 等群规声明,将其从特征本中剔除,避免误杀。"""
    # 简单地把匹配到的“禁止XXX”短语替换掉,这样它们就不会触发 subsequent 的关键词匹配
    return PROHIBITED_CONTEXT_REGEX.sub('', text)

def is_harmful(text: str) -> bool:
    text = text.lower()
    # 先剔除掉正常群规声明中的敏感词
    text_to_check = _remove_prohibited_context(text)
    
    for kw in HARMFUL_KEYWORDS:
        if kw in text_to_check:
            return True
    return False

def is_non_simplified_chinese(text: str) -> bool:
    """过滤非简体中文内容:如果中文字符比例极低,视为非目标语言频道。"""
    if not text:
        return True
    
    cjk_count = len(re.findall(r'[\u4e00-\u9fff]', text))
    clean_len = len(re.sub(r'[^\w]', '', text))
    
    if clean_len > 0:
        ratio = cjk_count / clean_len
        # 如果中文字符占比低于 15% 且总有效字符大于 20,判为非中文
        if ratio < 0.15 and clean_len > 20: 
            return True
        # 如果总长大于10但中文字符不到3个
        if cjk_count < 3 and clean_len > 10:
            return True
            
    return False

# ---------------------------------------------------------------------------
# 1. 文本清洁 (Text Optimization)
# ---------------------------------------------------------------------------

def remove_emoji(text: str) -> str:
    """去除文本中的所有 Emoji。"""
    if not text:
        return ""
    return emoji.replace_emoji(text, replace="")

def clean_text_advanced(text: str, title: str = "") -> str:
    """高级文本清洗:去除特定的引流词、网址、多余换行和符号等,并结合名称提炼。"""
    if not text:
        return ""
    
    # 去除 Emoji
    text = remove_emoji(text)
    
    # 去除 URL 链接和 @username
    text = re.sub(r'https?://[^\s]+', '', text)
    text = re.sub(r't\.me/[^\s]+', '', text)
    text = re.sub(r'@\w+', '', text)
    text = re.sub(r'tg://[^\s]+', '', text)
    
    # 去除冗余的引流、广告用语、常见无意义短语
    spam_patterns = [
        r'点击链接', r'加入群组', r'关注我们', r'点此加入',
        r'欢迎来到', r'各位大佬', r'在这里您可以', r'点击关注',
        r'本群规', r'进群请', r'防失联', r'解封说明',
        r'商务合作', r'广告投放', r'联系群主', r'联系管理',
        r'唯一投稿', r'投稿请联系', r'找资源的', r'交流群',
        r'聊天群', r'备用频道', r'官方频道', r'最新地址',
        r'请看置顶', r'进群看', r'获取最新', r'合作:',
        r'联系:', r'客服:', r'TG频道:', r'电报频道',
        r'【.*?】', r'\[.*?\]' # 去除各种括号包围的(往往是标签)如果太空洞,但这里保留,因为可能有有用信息。暂时不删括号。
    ]
    
    for pattern in spam_patterns:
        text = re.sub(pattern, '', text, flags=re.IGNORECASE)
        
    # 去掉特定的格式词语块
    text = re.sub(r'\[.*?推广.*?\]|【.*?广告.*?】', '', text)
    text = re.sub(r'商务合作.*?\n?', '', text)
    
    # 将长串连续的标点符号截断为单标点
    text = re.sub(r'([。!?…])\1+', r'\1', text)
    text = re.sub(r'([,、:;])\1+', r'\1', text)
    
    # 替换连续的换行符和空格为一个空格
    text = re.sub(r'[\r\n\t]+', ' ', text)
    text = re.sub(r'\s{2,}', ' ', text)
    
    # 去除两端或多余的标点
    text = re.sub(r'^[、,。!?:;\-|~= \*\#]+|[、,。!?:;\-|~= \*\#]+$', '', text.strip())
    
    # 截断策略:如果还是太长,则截取 100 字,寻找标点符号断句
    if len(text) > 100:
        trunc = text[:95]
        # 尝试在最后一个句号/叹号/逗号处截断
        match = re.search(r'[。!?,;][^。!?,;]*$', trunc)
        if match and match.start() > 50: # 如果后半段有标点符号
            text = trunc[:match.start()+1] + "..."
        else:
            text = trunc + "..."
            
    # 如果清洗完只剩下极少的字,且与 title 几乎一样,则加上“相关讨论与分享”
    if title and len(text) < 5 and text in title:
        text = f"关于 {title} 的相关讨论与分享频道。"
        
    return text.strip()

def clean_title_advanced(title: str) -> str:
    """专门为 title 清除多余修饰符。"""
    if not title:
        return ""
    title = remove_emoji(title)
    # 常用来装饰名字的特殊符号
    title = re.sub(r'[【】\[\]《》<>||~~*✨🌟🔥💥⚡️💯🎯🎁🎉🎊]+', ' ', title)
    title = re.sub(r'\s+', ' ', title)
    return title.strip()


# ---------------------------------------------------------------------------
# 2. 精细化分类 (Categorization) - 17 大类 + 上下文感知
# ---------------------------------------------------------------------------

# 用于剔除群规/声明中的关键词,避免"禁止NSFW"被归入 🔞
_RULE_CONTEXT_RE = re.compile(
    r'(禁止|严禁|不准|不允许|拒绝|谢绝|不发|不开|请勿|莫商|莫开|限制)'
    r'[^,。!?;\n]{0,15}?'
    r'(nsfw|色情|色图|涩图|18\+|开车|r18|adult|porn|sex|福利|政治|黄赌毒|广告|盗版|黑产)',
    re.IGNORECASE
)

def _remove_rule_context(text: str) -> str:
    """剔除群规声明中的敏感词上下文,防止分类误判。"""
    return _RULE_CONTEXT_RE.sub('', text)


# 分类列表(顺序即优先级,越靠前越优先匹配)
# 🔞 放在最后面以降低误分类可能
CATEGORIES = [
    {
        "name": "📰 新闻快讯",
        "keywords": [
            "新闻", "快讯", "报纸", "日报", "早报", "周刊", "时报",
            "媒体", "报道", "爆料", "时政", "内幕", "时事", "环球",
            "端传媒", "rss", "数字时代", "南方周末", "纽约时报",
            "财经", "财新", "华尔街", "金融时报",
            "吃瓜播报", "一手资讯", "热点追踪", "国际新闻"
        ]
    },
    {
        "name": "🪙 加密货币",
        "keywords": [
            "加密货币", "币圈", "区块链", "btc", "eth", "web3",
            "空投", "挖矿", "炒币", "nft", "交易所", "代币",
            "数字货币", "usdt", "比特币", "以太坊", "合约",
            "defi", "期货", "期权", "投资快讯",
            "薅羊毛", "币圈发财", "搞钱", "投资交流", "量化交易"
        ]
    },
    {
        "name": "🎬 影视剧集",
        "keywords": [
            "电影", "影视", "影院", "电视剧", "剧集", "网飞",
            "netflix", "4k", "美剧", "韩剧", "日剧", "中文字幕",
            "1080p", "纪录片", "bbc", "nhk", "asmr", "视频频道",
            "流媒体", "emby", "youtube", "找影视在线看", "免费追剧", "短剧大全"
        ]
    },
    {
        "name": "🎵 音乐音频",
        "keywords": [
            "音乐", "无损", "flac", "mp3", "音频", "网易云",
            "qq音乐", "歌单", "发烧友", "音响", "播客", "podcast",
            "听众",
        ]
    },
    {
        "name": "🎐 动漫次元",
        "keywords": [
            "动漫", "番剧", "二次元", "acg", "追番", "漫画",
            "轻小说", "里番", "同人", "画师", "cosplay", "漫展",
            "pixiv", "p站", "galgame", "黄油", "萌图", "萌域",
            "嗶咔", "插画", "动画", "酷漫",
        ]
    },
    {
        "name": "🎮 游戏娱乐",
        "keywords": [
            "游戏", "手游", "端游", "主机", "steam", "switch",
            "ps5", "xbox", "原神", "王者荣耀", "吃鸡", "和平精英",
            "电竞", "主机游戏", "单机游戏", "外挂", "破解游戏",
            "开黑", "神魔之塔", "minecraft", "狼人杀",
        ]
    },
    {
        "name": "💻 数码科技",
        "keywords": [
            "科技", "数码", "硬件", "apple", "苹果", "安卓",
            "ios", "mac", "windows", "手机", "测评", "极客",
            "geek", "科技新闻", "软路由", "路由器", "nas",
            "群晖", "openwrt", "google voice", "三星", "小米",
            "键盘", "apple tv", "树莓派", "raspberry",
            "ai", "chatgpt", "deepseek", "gpt", "人工智能",
            "claude", "openai", "aigc", "chromebook",
            "blackberry",
        ]
    },
    {
        "name": "👨‍💻 开发运维",
        "keywords": [
            "开源", "代码", "github", "开发", "程序员", "前端",
            "后端", "python", "linux", "java", "php", "golang",
            "运维", "码农", "编程", "服务器", "vps", "docker",
            "ubuntu", "manjaro", "arch", "debian", "centos",
            "javascript", "typescript", "rust", "scala", "ruby",
            "c语言", "hadoop", "spark", "magisk", "kernelsu",
            "v2fly", "hacker news", "leetcode", "刷题",
            "haskell", "perl", "css", "swiftui", "fedora",
            "vim", "openwrt固件",
        ]
    },
    {
        "name": "🔒 信息安全",
        "keywords": [
            "信息安全", "安全技术", "安防", "隐私", "privacy",
            "安全资源", "渗透", "防护", "加密", "密码学",
            "adguard", "防撤回", "anti revoke", "ddos",
        ]
    },
    {
        "name": "✈️ 科学上网",
        "keywords": [
            "免流", "节点", "代理", "vpn", "机场", "科学上网",
            "翻墙", "v2ray", "clash", "shadowsocks", "trojan",
            "测速", "梯子", "surge", "quantumult", "loon",
            "迷雾通", "搬瓦工",
        ]
    },
    {
        "name": "☁️ 网盘资源",
        "keywords": [
            "网盘", "阿里云盘", "夸克", "百度云", "百度网盘",
            "天翼", "迅雷", "115", "资源分享", "扩容",
            "pt", "tracker", "种子", "磁力", "离线下载",
            "google drive",
        ]
    },
    {
        "name": "🧰 软件工具",
        "keywords": [
            "软件", "app", "破解版", "修改版", "绿色版",
            "安装包", "apk", "mac软件", "win软件", "效率",
            "工具", "神器", "快捷指令", "脚本",
            "翻译", "translate", "simpread", "简悦",
            "notion", "输入法",
        ]
    },
    {
        "name": "📚 学习阅读",
        "keywords": [
            "学习", "外语", "英语", "日语", "电子书", "kindle",
            "epub", "pdf", "公开课", "课程", "教程", "考研",
            "雅思", "托福", "读书", "知乎", "期刊", "杂志",
            "考公", "网课", "博客", "blog", "少数派",
            "值得读", "豆瓣", "经济学", "哲学",
            "维基百科", "wikipedia", "有声", "写作",
        ]
    },
    {
        "name": "📡 社媒搬运",
        "keywords": [
            "推特", "twitter", "微博", "reddit", "饭否",
            "微信搬运", "精选", "翻译推", "公众号",
        ]
    },
    {
        "name": "🎨 创意设计",
        "keywords": [
            "设计", "design", "ui", "ux", "排版",
            "字体", "画室", "美术", "艺术", "art",
            "创意", "品牌",
        ]
    },
    {
        "name": "🏀 体育运动",
        "keywords": [
            "体育", "足球", "篮球", "nba", "cba",
            "运动", "健身", "跑步", "世界杯", "欧冠",
        ]
    },
    {
        "name": "👗 生活消费",
        "keywords": [
            "日常", "购物", "薅羊毛", "羊毛", "优惠", "折扣",
            "淘宝", "京东", "拼多多", "外卖", "求职", "招聘",
            "职场", "旅游", "机票", "美食", "壁纸", "wallpaper",
            "头像", "文案", "摄影", "颜值", "美图",
            "信用卡", "sim卡", "捡漏", "限免", "亚马逊", "amazon",
            "地震", "天气",
        ]
    },
    {
        "name": "🌍 地区社群",
        "keywords": [
            "湖南", "广西", "四川", "西安", "济南", "周口",
            "河南", "北京", "上海", "广东", "深圳", "成都",
            "台湾", "香港", "高雄", "大学联盟", "大学",
        ]
    },
    {
        "name": "💬 闲聊交友",
        "keywords": [
            "交友", "相亲", "闲聊", "水群", "吹水",
            "单身", "聊天", "交际", "互助", "同好", "贴吧",
            "沙雕", "表情包", "贴纸", "sticker", "冷知识",
            "趣事", "段子", "笑话", "猫", "树洞", "电报群",
            "碎碎念", "日记", "拾趣", "怪话", "情话",
            "v2ex",
        ]
    },
    {
        "name": "🗂️ 综合导航",
        "keywords": [
            "导航", "搜群", "索引", "频道大全", "群组大全",
            "机器人大全", "大全", "telegram 中文", "电报中文",
            "新手", "入门", "指南", "语言包", "中文包",
        ]
    },
    {
        # 🔞 放在最后,避免群规声明中的关键词优先匹配到此类
        "name": "🔞 福利吃瓜",
        "keywords": [
            "nsfw", "老司机", "写真", "套图", "色图", "涩图",
            "黑料", "探花", "海角", "绅士", "妹子图",
            "吃瓜",
        ]
    },
]


def determine_category(title: str, desc: str) -> str:
    """根据关键词推断分类,带上下文感知。
    
    1. 先用 title 单独匹配(title 中出现的关键词更可信)
    2. 再用 title + desc 联合匹配
    3. 联合匹配时先剔除群规声明中的关键词上下文
    """
    title_lower = title.lower()
    
    # 第一轮:仅匹配 title(高置信度)
    for cat in CATEGORIES:
        for kw in cat["keywords"]:
            if kw.lower() in title_lower:
                return cat["name"]
    
    # 第二轮:匹配 title + desc(先剔除群规声明上下文)
    full_text = f"{title} {desc}".lower()
    full_text_cleaned = _remove_rule_context(full_text)
    
    for cat in CATEGORIES:
        for kw in cat["keywords"]:
            if kw.lower() in full_text_cleaned:
                return cat["name"]
    
    return "🌐 综合其他"


def main():
    print("🧹 开始执行高级清洗与精细分类 (22大类)...")
    conn = sqlite3.connect(str(DB_PATH))
    conn.row_factory = sqlite3.Row
    
    rows = conn.execute("SELECT * FROM entries WHERE keep=1").fetchall()
    print(f"处理保留的 {len(rows)} 条记录...")
    
    changed = 0
    filtered_harmful = 0
    filtered_lang = 0
    cat_counts = {}
    
    for row in rows:
        entry = dict(row)
        title = entry.get("title") or ""
        desc = entry.get("description") or ""
        full_text = title + " " + desc
        
        # 0. 有害内容及语言过滤
        if is_harmful(full_text):
            conn.execute("UPDATE entries SET keep=0, filter_reason='有害内容', updated_at=datetime('now') WHERE id=?", (entry["id"],))
            changed += 1
            filtered_harmful += 1
            print(f"  ❌ 过滤 (有害内容): {title}")
            continue
            
        if is_non_simplified_chinese(full_text):
            conn.execute("UPDATE entries SET keep=0, filter_reason='非简中内容', updated_at=datetime('now') WHERE id=?", (entry["id"],))
            changed += 1
            filtered_lang += 1
            print(f"  ❌ 过滤 (非简中内容): {title}")
            continue

        # 1. & 2. 清洗与分类
        c_title = clean_title_advanced(title) or title  # fallback
        c_desc = clean_text_advanced(desc, title)
        
        # fallback for completely wiped descriptions
        if not c_desc:
            c_desc = "暂无详细简介。"
            
        category = determine_category(title, desc)
        
        conn.execute(
            "UPDATE entries SET clean_title=?, clean_desc=?, category=?, updated_at=datetime('now') WHERE id=?",
            (c_title, c_desc, category, entry["id"])
        )
        changed += 1
        cat_counts[category] = cat_counts.get(category, 0) + 1
        
    conn.commit()
    conn.close()
    
    print(f"✅ 处理完成,共重新分类和清洗 {changed} 条记录!")
    if filtered_harmful > 0 or filtered_lang > 0:
        print(f"   其中排除了 {filtered_harmful} 条有害内容,{filtered_lang} 条非简中内容。")
    print("\n📊 分类统计 (留存项目):")
    for cat, count in sorted(cat_counts.items(), key=lambda x: x[1], reverse=True):
        print(f"  {cat}: {count} 条")


if __name__ == "__main__":
    main()


================================================
FILE: scripts/crawl.py
================================================
#!/usr/bin/env python3
"""
Telegram 公开页面爬虫
从 SQLite 的 links 表中获取链接,爬取公开信息,结果存入 entries 表。

前置条件:
    先运行 parse_links.py 将 README 中的链接导入 links 表。

用法:
    python3 scripts/crawl.py              # 爬取全部(断点续爬)
    python3 scripts/crawl.py --limit 10   # 只爬前 10 个(测试用)
    python3 scripts/crawl.py --new        # 只爬新链接
    python3 scripts/crawl.py --no-resume  # 清空 entries 表,从头开始
"""
from __future__ import annotations

import argparse
import base64
import json
import logging
import random
import re
import sqlite3
import sys
import time
from datetime import datetime
from pathlib import Path

import requests
import opencc
from bs4 import BeautifulSoup

# ---------------------------------------------------------------------------
# 常量
# ---------------------------------------------------------------------------

ROOT_DIR = Path(__file__).resolve().parent.parent
DATA_DIR = ROOT_DIR / "data"
DB_PATH = DATA_DIR / "rectg.db"
LOG_PATH = DATA_DIR / "crawl.log"

# 限流配置(保守)
MIN_DELAY = 3          # 每次请求最小间隔(秒)
MAX_DELAY = 6          # 每次请求最大间隔(秒)
BATCH_SIZE = 50        # 每批次条数
BATCH_PAUSE = 60       # 批次间暂停(秒)
RETRY_BASE = 60        # 429 退避基础等待(秒)
RETRY_MAX = 300        # 429 最大等待(秒)
MAX_RETRIES = 3        # 最大重试次数

HEADERS = {
    "User-Agent": (
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) "
        "AppleWebKit/537.36 (KHTML, like Gecko) "
        "Chrome/120.0.0.0 Safari/537.36"
    ),
    "Accept-Language": "en-US,en;q=0.9",
}

# 过滤阈值
MIN_CHANNEL_SUBSCRIBERS = 1000
MIN_GROUP_MEMBERS = 200
INACTIVE_DAYS_THRESHOLD = 90

# 中文字符 Unicode 范围
_CJK_RANGES = re.compile(r'[\u4e00-\u9fff\u3400-\u4dbf\uf900-\ufaff]')


# ---------------------------------------------------------------------------
# 日志配置
# ---------------------------------------------------------------------------

def setup_logging(log_path: Path) -> logging.Logger:
    """配置日志:同时输出到控制台和文件。"""
    log_path.parent.mkdir(parents=True, exist_ok=True)

    logger = logging.getLogger("crawl")
    logger.setLevel(logging.DEBUG)

    # 控制台:简洁格式
    console = logging.StreamHandler(sys.stdout)
    console.setLevel(logging.INFO)
    console.setFormatter(logging.Formatter("%(message)s"))
    # 强制 flush
    console.stream = type('FlushStream', (), {
        'write': lambda self, msg: (sys.stdout.write(msg), sys.stdout.flush()),
        'flush': lambda self: sys.stdout.flush(),
    })()
    logger.addHandler(console)

    # 文件:详细格式,带时间戳
    file_handler = logging.FileHandler(str(log_path), encoding="utf-8")
    file_handler.setLevel(logging.DEBUG)
    file_handler.setFormatter(logging.Formatter(
        "%(asctime)s [%(levelname)s] %(message)s",
        datefmt="%Y-%m-%d %H:%M:%S",
    ))
    logger.addHandler(file_handler)

    return logger


log = logging.getLogger("crawl")


# ---------------------------------------------------------------------------
# 进度追踪器
# ---------------------------------------------------------------------------

class ProgressTracker:
    """追踪爬取进度并计算 ETA。"""

    def __init__(self, total: int):
        self.total = total
        self.done = 0
        self.kept = 0
        self.filtered = 0
        self.start_time = time.time()

    def tick(self, keep: bool):
        self.done += 1
        if keep:
            self.kept += 1
        else:
            self.filtered += 1

    def progress_str(self) -> str:
        elapsed = time.time() - self.start_time
        pct = self.done * 100 / self.total if self.total else 0
        remaining = self.total - self.done

        if self.done > 0:
            avg_time = elapsed / self.done
            eta_seconds = remaining * avg_time
            eta_min = int(eta_seconds // 60)
            eta_sec = int(eta_seconds % 60)
            eta_str = f"{eta_min}m{eta_sec}s"
        else:
            eta_str = "计算中"

        elapsed_min = int(elapsed // 60)
        elapsed_sec = int(elapsed % 60)

        return (
            f"[{self.done}/{self.total}] {pct:.1f}% "
            f"| ✅{self.kept} ❌{self.filtered} "
            f"| 耗时 {elapsed_min}m{elapsed_sec}s "
            f"| 预计剩余 {eta_str}"
        )

    def summary_str(self) -> str:
        elapsed = time.time() - self.start_time
        elapsed_min = int(elapsed // 60)
        elapsed_sec = int(elapsed % 60)
        return (
            f"总计: {self.done} | 保留: {self.kept} | 过滤: {self.filtered} "
            f"| 总耗时: {elapsed_min}m{elapsed_sec}s"
        )


# ---------------------------------------------------------------------------
# SQLite 数据库
# ---------------------------------------------------------------------------

def init_db(db_path: Path) -> sqlite3.Connection:
    """初始化数据库,创建 entries 表。"""
    conn = sqlite3.connect(str(db_path))
    conn.row_factory = sqlite3.Row
    conn.execute("""
        CREATE TABLE IF NOT EXISTS entries (
            id              INTEGER PRIMARY KEY AUTOINCREMENT,
            telegram_id     INTEGER,
            username        TEXT UNIQUE,
            url             TEXT NOT NULL UNIQUE,
            type            TEXT,
            title           TEXT,
            description     TEXT,
            clean_title     TEXT,
            clean_desc      TEXT,
            category        TEXT,
            avatar          TEXT,
            count           INTEGER,
            last_active     TEXT,
            valid           INTEGER DEFAULT 0,
            private         INTEGER DEFAULT 0,
            keep            INTEGER DEFAULT 0,
            filter_reason   TEXT,
            created_at      TEXT NOT NULL,
            updated_at      TEXT NOT NULL
        )
    """)
    conn.commit()
    return conn


def upsert_entry(conn: sqlite3.Connection, data: dict):
    """插入或更新一条 entries 记录。"""
    now = datetime.now().isoformat()

    # 先检查 url 是否已存在
    existing = conn.execute(
        "SELECT id, created_at FROM entries WHERE url = ?",
        (data["url"],),
    ).fetchone()

    if existing:
        data["created_at"] = existing["created_at"]
        data["updated_at"] = now
        conn.execute("""
            UPDATE entries SET
                telegram_id   = :telegram_id,
                username      = :username,
                type          = :type,
                title         = :title,
                description   = :description,
                avatar        = :avatar,
                count         = :count,
                last_active   = :last_active,
                valid         = :valid,
                private       = :private,
                keep          = :keep,
                filter_reason = :filter_reason,
                updated_at    = :updated_at
            WHERE url = :url
        """, data)
    else:
        # 检查 username 是否已存在(不同 URL 指向同一频道,如 fakeye?boost 和 fakeye)
        if data.get("username"):
            dup = conn.execute(
                "SELECT id, url FROM entries WHERE username = ?",
                (data["username"],),
            ).fetchone()
            if dup:
                log.info("       ⏭️  跳过: 同一频道已存在 (%s)", dup["url"])
                return

        data["created_at"] = now
        data["updated_at"] = now
        conn.execute("""
            INSERT INTO entries (
                telegram_id, username, url, type,
                title, description, avatar,
                count, last_active,
                valid, private, keep, filter_reason,
                created_at, updated_at
            ) VALUES (
                :telegram_id, :username, :url, :type,
                :title, :description, :avatar,
                :count, :last_active,
                :valid, :private, :keep, :filter_reason,
                :created_at, :updated_at
            )
        """, data)
    conn.commit()


# ---------------------------------------------------------------------------
# 爬取逻辑
# ---------------------------------------------------------------------------

def parse_subscriber_text(text: str) -> tuple:
    """解析页面上的人气数据文本。"""
    text = text.strip()
    if not text:
        return None, None

    m = re.search(r"([\d\s\xa0]+)\s*subscribers?", text, re.IGNORECASE)
    if m:
        count = int(m.group(1).replace(" ", "").replace("\xa0", ""))
        return "channel", count

    m = re.search(r"([\d\s\xa0]+)\s*members?", text, re.IGNORECASE)
    if m:
        count = int(m.group(1).replace(" ", "").replace("\xa0", ""))
        return "group", count

    m = re.search(r"([\d\s\xa0]+)\s*monthly\s*users?", text, re.IGNORECASE)
    if m:
        count = int(m.group(1).replace(" ", "").replace("\xa0", ""))
        return "bot", count

    return None, None


def crawl_page(session: requests.Session, url: str, username: str) -> dict:
    """爬取单个 t.me 页面,提取公开信息。"""
    result = {
        "url": url,
        "username": username,
        "telegram_id": None,
        "valid": 0,
        "private": 0,
        "type": None,
        "title": None,
        "description": None,
        "avatar": None,
        "count": None,
        "last_active": None,
    }

    if username is None:
        result["private"] = 1
        log.debug("  跳过: 无 username(私有邀请链接)")
        return result

    canonical_url = f"https://t.me/{username}"
    log.debug("  GET %s", canonical_url)
    resp = _request_with_retry(session, canonical_url)
    if resp is None or resp.status_code != 200:
        log.debug("  HTTP 失败: %s", resp.status_code if resp else "无响应")
        return result

    soup = BeautifulSoup(resp.text, "lxml")
    result["valid"] = 1

    # 检查是否私密
    page_text = soup.get_text(separator=" ", strip=True).lower()
    private_keywords = [
        "this channel is private",
        "this group is private",
        "this channel can't be displayed",
    ]
    extra_div = soup.find("div", class_="tgme_page_extra")
    if any(kw in page_text for kw in private_keywords):
        if not extra_div or not extra_div.get_text(strip=True):
            result["private"] = 1

    # 提取 meta 信息
    og_title = soup.find("meta", property="og:title")
    if og_title:
        title = og_title.get("content", "").strip()
        title = re.sub(r"^Telegram:\s*(Contact|View|Launch)\s*@?\s*", "", title)
        if title:
            result["title"] = title

    og_desc = soup.find("meta", property="og:description")
    if og_desc:
        result["description"] = og_desc.get("content", "").strip()

    og_image = soup.find("meta", property="og:image")
    if og_image:
        avatar_url = og_image.get("content", "").strip()
        if avatar_url and "telegram.org/img/" not in avatar_url:
            result["avatar"] = avatar_url

    # 提取人气数据
    if extra_div:
        extra_text = extra_div.get_text(strip=True)
        detected_type, count = parse_subscriber_text(extra_text)
        if detected_type:
            result["type"] = detected_type
            result["count"] = count

    return result


def crawl_preview_page(session: requests.Session, username: str) -> dict:
    """爬取频道 /s/ 预览页,获取最后活跃时间和 Telegram ID。"""
    info = {"last_active": None, "telegram_id": None}
    url = f"https://t.me/s/{username}"
    log.debug("  GET %s", url)
    resp = _request_with_retry(session, url)
    if resp is None or resp.status_code != 200:
        log.debug("  /s/ 页面不可用")
        return info

    soup = BeautifulSoup(resp.text, "lxml")

    # 提取 Telegram ID
    data_view_el = soup.find(attrs={"data-view": True})
    if data_view_el:
        try:
            raw = data_view_el["data-view"]
            padding = 4 - len(raw) % 4
            if padding != 4:
                raw += "=" * padding
            decoded = base64.b64decode(raw).decode("utf-8")
            view_data = json.loads(decoded)
            if "c" in view_data:
                short_id = view_data["c"]
                info["telegram_id"] = int(f"-100{abs(short_id)}")
        except Exception as e:
            log.debug("  解析 telegram_id 失败: %s", e)

    # 提取最后活跃时间
    date_elements = soup.find_all(attrs={"datetime": True})
    if date_elements:
        dates = [d["datetime"] for d in date_elements]
        dates.sort()
        if dates:
            info["last_active"] = dates[-1]
    else:
        time_elements = soup.find_all("time")
        if time_elements:
            dates = [t.get("datetime") for t in time_elements if t.get("datetime")]
            if dates:
                dates.sort()
                info["last_active"] = dates[-1]

    return info


# ---------------------------------------------------------------------------
# HTTP 请求
# ---------------------------------------------------------------------------

def _request_with_retry(
    session: requests.Session,
    url: str,
    max_retries: int = MAX_RETRIES,
):
    """带指数退避的 HTTP GET 请求。"""
    for attempt in range(max_retries):
        try:
            resp = session.get(url, headers=HEADERS, timeout=15)
        except requests.RequestException as e:
            log.warning("  ⚠ 请求异常: %s", e)
            if attempt < max_retries - 1:
                wait = min(RETRY_BASE * (2 ** attempt), RETRY_MAX)
                log.info("  ⏳ 等待 %ds 后重试 (第 %d/%d 次)...", wait, attempt + 1, max_retries)
                time.sleep(wait)
                continue
            return None

        if resp.status_code == 429:
            wait = min(RETRY_BASE * (2 ** attempt), RETRY_MAX)
            log.warning("  ⚠ 429 Too Many Requests,等待 %ds... (第 %d/%d 次)", wait, attempt + 1, max_retries)
            time.sleep(wait)
            continue

        log.debug("  HTTP %d (%d bytes)", resp.status_code, len(resp.content))
        return resp

    return None


# ---------------------------------------------------------------------------
# 过滤
# ---------------------------------------------------------------------------

# OpenCC 繁→简转换器(全局复用)
_t2s_converter = opencc.OpenCC('t2s')

# 繁体中文判定阈值:转换前后字符差异率超过此比例视为繁体
_TRADITIONAL_RATIO_THRESHOLD = 0.10


def _contains_chinese(text: str) -> bool:
    if not text:
        return False
    return bool(_CJK_RANGES.search(text))


def _is_traditional_chinese(text: str) -> bool:
    """使用 OpenCC 判断文本是否为繁体中文。
    将文本从繁体转为简体,比较转换前后的差异比例。
    """
    if not text:
        return False
    cjk_chars = _CJK_RANGES.findall(text)
    if len(cjk_chars) < 5:
        return False

    simplified = _t2s_converter.convert(text)
    # 统计转换前后不同的字符数
    diff_count = sum(1 for a, b in zip(text, simplified) if a != b)
    total = max(len(text), 1)
    ratio = diff_count / total
    return ratio >= _TRADITIONAL_RATIO_THRESHOLD


def _is_simplified_chinese_entry(entry: dict) -> bool:
    """判断条目是否为简体中文内容(包含中文且不是繁体)。"""
    has_chinese = False
    combined_text = ""
    for field in ("title", "description"):
        text = entry.get(field) or ""
        if _contains_chinese(text):
            has_chinese = True
        combined_text += text

    if not has_chinese:
        return False

    if _is_traditional_chinese(combined_text):
        return False

    return True


def _is_inactive_channel(entry: dict) -> bool:
    last_active = entry.get("last_active")
    if not last_active:
        return False
    try:
        dt_str = last_active.replace("+00:00", "").replace("Z", "")
        last_dt = datetime.fromisoformat(dt_str)
        return (datetime.now() - last_dt).days > INACTIVE_DAYS_THRESHOLD
    except (ValueError, TypeError):
        return False


def _inactive_days(entry: dict) -> int:
    last_active = entry.get("last_active", "")
    try:
        dt_str = last_active.replace("+00:00", "").replace("Z", "")
        last_dt = datetime.fromisoformat(dt_str)
        return (datetime.now() - last_dt).days
    except (ValueError, TypeError):
        return 0


def should_keep(entry: dict) -> tuple:
    """判断条目是否应该保留。返回 (keep, reason)。"""
    if not entry.get("valid"):
        return False, "链接无效"
    if entry.get("private"):
        return False, "私密频道/群组"

    entry_type = entry.get("type")

    if entry_type is None:
        return False, "无法识别类型"

    if not _contains_chinese((entry.get("title") or "") + (entry.get("description") or "")):
        return False, "非中文内容"

    if not _is_simplified_chinese_entry(entry):
        return False, "繁体中文内容"

    if entry_type == "channel":
        count = entry.get("count") or 0
        if count < MIN_CHANNEL_SUBSCRIBERS:
            return False, f"订阅数不足 ({count} < {MIN_CHANNEL_SUBSCRIBERS})"
        if _is_inactive_channel(entry):
            days = _inactive_days(entry)
            return False, f"频道不活跃 ({days}天未更新)"
    elif entry_type == "group":
        count = entry.get("count") or 0
        if count < MIN_GROUP_MEMBERS:
            return False, f"成员数不足 ({count} < {MIN_GROUP_MEMBERS})"
    elif entry_type == "bot":
        count = entry.get("count")
        if count is None or count == 0:
            return False, "无月活用户数据"

    return True, ""


# ---------------------------------------------------------------------------
# 主流程
# ---------------------------------------------------------------------------

def main():
    global log

    parser = argparse.ArgumentParser(description="Telegram 公开页面爬虫")
    parser.add_argument("--limit", type=int, default=0, help="限制爬取数量(0=全部)")
    parser.add_argument("--new", action="store_true", help="只爬取尚未爬过的新链接")
    parser.add_argument("--no-resume", action="store_true", help="清空 entries 表,从头开始")
    parser.add_argument("--no-active", action="store_true", help="跳过 /s/ 页面爬取")
    args = parser.parse_args()

    # 初始化日志
    log = setup_logging(LOG_PATH)

    log.info("=" * 60)
    log.info("  Telegram 公开页面爬虫")
    log.info("  启动时间: %s", datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
    log.info("  日志文件: %s", LOG_PATH)
    log.info("=" * 60)

    if not DB_PATH.exists():
        log.error("❌ 未找到数据库: %s", DB_PATH)
        log.error("   请先运行: python3 scripts/parse_links.py")
        sys.exit(1)

    conn = init_db(DB_PATH)

    # 清空模式
    if args.no_resume:
        conn.execute("DELETE FROM entries")
        conn.commit()
        log.info("🗑️  已清空 entries 表")

    # 1. 从 links 表获取待爬链接
    if args.new or (not args.no_resume):
        links = conn.execute("""
            SELECT l.url, l.username, l.name, l.type_hint
            FROM links l
            LEFT JOIN entries e ON l.url = e.url
            WHERE e.url IS NULL
            ORDER BY l.id
        """).fetchall()
    else:
        links = conn.execute("""
            SELECT url, username, name, type_hint FROM links ORDER BY id
        """).fetchall()

    links = [dict(row) for row in links]

    if not links:
        if args.new:
            log.info("✅ 没有新链接需要爬取")
        else:
            log.error("❌ links 表为空,请先运行: python3 scripts/parse_links.py")
        sys.exit(0)

    total_links = conn.execute("SELECT COUNT(*) FROM links").fetchone()[0]
    total_entries = conn.execute("SELECT COUNT(*) FROM entries").fetchone()[0]
    log.info("")
    log.info("📊 数据库概览:")
    log.info("   links 表:   %d 条", total_links)
    log.info("   entries 表: %d 条", total_entries)
    log.info("   待爬取:     %d 条", len(links))

    if args.limit > 0:
        links = links[:args.limit]
        log.info("   限制爬取:   前 %d 个", args.limit)

    # 2. 开始爬取
    session = requests.Session()
    request_count = 0
    total = len(links)
    tracker = ProgressTracker(total)

    log.info("")
    log.info("🕷️  开始爬取...")
    log.info("-" * 60)

    for i, link in enumerate(links):
        url = link["url"]
        username = link["username"]

        log.info("")
        log.info("[%d/%d] 🔍 %s", i + 1, total, link["name"])
        log.info("       %s", url)

        # 爬取主页
        result = crawl_page(session, url, username)
        request_count += 1

        # 如果爬取未识别类型,用 links 表的 type_hint 推断
        if result["type"] is None and link.get("type_hint"):
            result["type"] = link["type_hint"]
            log.debug("  类型由 type_hint 推断: %s", link["type_hint"])

        # 爬取 /s/ 页面(仅有效频道)
        if (
            not args.no_active
            and result.get("valid")
            and result.get("type") == "channel"
            and not result.get("private")
            and username
        ):
            _random_delay()
            preview = crawl_preview_page(session, username)
            result["last_active"] = preview["last_active"]
            if preview["telegram_id"]:
                result["telegram_id"] = preview["telegram_id"]
            request_count += 1

        # 过滤判断
        keep, reason = should_keep(result)
        result["keep"] = 1 if keep else 0
        result["filter_reason"] = reason

        # 日志输出
        if result.get("valid"):
            type_label = {"channel": "频道", "group": "群组", "bot": "机器人"}.get(result.get("type"), "未知")
            count_val = result.get("count")
            count_str = f"{count_val:,}" if count_val is not None else "-"

            if keep:
                log.info("       ✅ 保留 | %s | %s", type_label, count_str)
            else:
                log.info("       ❌ 过滤 | %s | %s | %s", type_label, count_str, reason)

            if result.get("telegram_id"):
                log.debug("       🆔 ID: %s", result["telegram_id"])
            if result.get("last_active"):
                log.debug("       📅 最后活跃: %s", result["last_active"])
        else:
            log.info("       ❌ 无效链接")

        # 更新进度
        tracker.tick(keep)

        # 写入数据库
        upsert_entry(conn, result)

        # 每 10 条打印一次进度摘要
        if (i + 1) % 10 == 0:
            log.info("")
            log.info("📈 %s", tracker.progress_str())

        # 限流
        _random_delay()

        # 批次暂停
        if request_count > 0 and request_count % BATCH_SIZE == 0:
            log.info("")
            log.info("⏸️  已爬 %d 次请求,暂停 %ds...", request_count, BATCH_PAUSE)
            time.sleep(BATCH_PAUSE)
            log.info("▶️  继续爬取...")

    # 3. 打印统计
    stats = conn.execute("""
        SELECT
            COUNT(*) as total,
            SUM(keep) as kept,
            SUM(CASE WHEN keep = 0 THEN 1 ELSE 0 END) as filtered,
            SUM(CASE WHEN type = 'channel' AND keep = 1 THEN 1 ELSE 0 END) as channels,
            SUM(CASE WHEN type = 'group' AND keep = 1 THEN 1 ELSE 0 END) as groups,
            SUM(CASE WHEN type = 'bot' AND keep = 1 THEN 1 ELSE 0 END) as bots
        FROM entries
    """).fetchone()

    filter_reasons = conn.execute("""
        SELECT filter_reason, COUNT(*) as cnt
        FROM entries WHERE keep = 0 AND filter_reason IS NOT NULL
        GROUP BY filter_reason ORDER BY cnt DESC
    """).fetchall()

    conn.close()

    log.info("")
    log.info("=" * 60)
    log.info("  📊 爬取完成")
    log.info("=" * 60)
    log.info("  %s", tracker.summary_str())
    log.info("")
    log.info("  数据库 entries 表:")
    log.info("    总条目:    %s", stats['total'])
    log.info("    保留:      %s", stats['kept'])
    log.info("    过滤:      %s", stats['filtered'])
    log.info("    ├ 频道:    %s", stats['channels'])
    log.info("    ├ 群组:    %s", stats['groups'])
    log.info("    └ 机器人:  %s", stats['bots'])

    if filter_reasons:
        log.info("")
        log.info("  过滤原因:")
        for row in filter_reasons:
            log.info("    ❌ %s: %s", row['filter_reason'], row['cnt'])

    log.info("")
    log.info("  日志: %s", LOG_PATH)
    log.info("  数据库: %s", DB_PATH)


def _random_delay():
    delay = random.uniform(MIN_DELAY, MAX_DELAY)
    time.sleep(delay)


if __name__ == "__main__":
    main()


================================================
FILE: scripts/generate_readme.py
================================================
#!/usr/bin/env python3
"""
README.md 生成器
从 SQLite 数据库读取已经清洗和分类好的爬虫结果,生成更新后的 README.md。

用法:
    python3 scripts/generate_readme.py
"""
import argparse
import sqlite3
import sys
from datetime import datetime
from pathlib import Path

ROOT_DIR = Path(__file__).resolve().parent.parent
DB_PATH = ROOT_DIR / "data" / "rectg.db"
README_PATH = ROOT_DIR / "README.md"

# 一级大类
TYPE_ORDER = [
    {"id": "channel", "name": "频道"},
    {"id": "group", "name": "群组"},
    {"id": "bot", "name": "机器人"},
]

# 二级分类排序规则(按照这个顺序输出二级分类)
CATEGORY_ORDER = [
    "🆕 新发现频道",
    "📰 新闻快讯",
    "💻 数码科技",
    "👨‍💻 开发运维",
    "🔒 信息安全",
    "🧰 软件工具",
    "☁️ 网盘资源",
    "🎬 影视剧集",
    "🎵 音乐音频",
    "🎐 动漫次元",
    "🎮 游戏娱乐",
    "✈️ 科学上网",
    "🪙 加密货币",
    "📚 学习阅读",
    "🎨 创意设计",
    "📡 社媒搬运",
    "🏀 体育运动",
    "👗 生活消费",
    "🌍 地区社群",
    "💬 闲聊交友",
    "🔞 福利吃瓜",
    "🗂️ 综合导航",
    "🌐 综合其他"
]

def make_anchor(section: str, category_index: int | None = None) -> str:
    """生成稳定锚点,避免依赖 GitHub 对中文/emoji 标题的默认锚点规则。"""
    if category_index is None:
        return f"section-{section}"
    return f"section-{section}-{category_index}"

def format_count(count) -> str:
    """格式化数字为精确数字字符串,带千分位逗号。"""
    if count is None:
        return "-"
    return f"{int(count):,}"

def escape_pipe(text: str) -> str:
    """转义 Markdown 表格中的管道符。"""
    if not text:
        return ""
    return text.replace("|", " / ").replace("\n", " ").strip()

def compact_text(text: str) -> str:
    """压缩多余空白,适合表格单元格。"""
    if not text:
        return ""
    return " ".join(text.split())

def build_toc_column(title: str, section_id: str, categories: list[str]) -> str:
    """构建目录单列 HTML,适配 GitHub README 的多列表现。"""
    links = [f'<a href="#{make_anchor(section_id)}"><strong>{title}</strong></a>']
    for idx, cat in enumerate(categories, start=1):
        links.append(f'<a href="#{make_anchor(section_id, idx)}">{cat}</a>')
    return "<br>".join(links)

def generate_readme(conn: sqlite3.Connection) -> str:
    """从数据库生成 README.md 内容。"""
    rows = conn.execute("""
        SELECT type, category, clean_title, clean_desc, url, count, title, description
        FROM entries
        WHERE keep = 1
        ORDER BY count DESC
    """).fetchall()

    # 结构: stats[type_id][cat_name] = [item1, item2, ...]
    tree = {
        "channel": {},
        "group": {},
        "bot": {}
    }
    
    total_kept = len(rows)

    # 手动注入的新频道,在这里记录它们的 URL,避免在后续重复添加
    NEW_CHANNELS = [
        {"title": "副业", "url": "https://t.me/sidehustleus", "description": "关注副业赚钱、搞钱经验和独立开发", "count": None},
        {"title": "技术拾荒者", "url": "https://t.me/tech_scavenger", "description": "分享优质技术文章、开源项目与实用工具", "count": None},
        {"title": "一个人的产品", "url": "https://t.me/solo_product", "description": "独立开发者、产品设计与运营经验", "count": None},
        {"title": "深夜博客", "url": "https://t.me/late_night_blog", "description": "深夜阅读文章、个人随笔与精神角落", "count": None},
        {"title": "什么值得看", "url": "https://t.me/worth_read", "description": "推荐值得一读的好文章与好书", "count": None},
        {"title": "程序员日常", "url": "https://t.me/dev_everyday", "description": "程序员的日常工作、吐槽与经验分享", "count": None},
        {"title": "小众软件", "url": "https://t.me/niche_software", "description": "发现与分享好用、新奇的小众软件", "count": None},
        {"title": "酱酱の日报", "url": "https://t.me/jiangdaily", "description": "每天不只是新闻,更是酱酱的发现日常~ 精选有趣、有料、有灵魂的「热饭」", "count": 137},
        {"title": "财经速报", "url": "https://t.me/econ_news_cn", "description": "最新最快的财经新闻与市场动态资讯", "count": None},
        {"title": "AI 工具情报局", "url": "https://t.me/AIGongJuQBJ", "description": "每天更新 AI 工具、软件应用、开源项目和效率产品动态,帮你更快发现真正有用的工具。", "count": 2}
    ]
    custom_urls = {ch["url"] for ch in NEW_CHANNELS}
    custom_rows = conn.execute("""
        SELECT url, count
        FROM entries
        WHERE url IN ({})
    """.format(",".join("?" for _ in custom_urls)), tuple(custom_urls)).fetchall()
    count_by_url = {
        row["url"]: row["count"]
        for row in custom_rows
        if row["count"] is not None
    }

    for row in rows:
        t = row["type"]
        if t not in tree:
            continue
            
        # 过滤掉自定义注入的频道,防止重复
        if row["url"] in custom_urls:
            continue

        cat = row["category"] or "🌐 综合其他"
        if cat not in tree[t]:
            tree[t][cat] = []
        tree[t][cat].append(dict(row))

    # 注入新频道板块
    tree["channel"]["🆕 新发现频道"] = [
        {
            "type": "channel",
            "category": "🆕 新发现频道",
            "clean_title": ch["title"],
            "title": ch["title"],
            "url": ch["url"],
            "count": count_by_url.get(ch["url"], ch["count"]),
            "clean_desc": ch["description"],
            "description": ch["description"]
        } for ch in NEW_CHANNELS
    ]

    type_counts = {}
    for t_id in tree:
        type_counts[t_id] = sum(len(items) for items in tree[t_id].values())

    lines = []
    lines.append("# rectg · Telegram 中文频道与群组精选")
    lines.append("")
    lines.append("> **rectg** 持续收录高质量 Telegram 中文频道与群组,结合自动化抓取与人工整理,尽量剔除失效链接、低质内容与长期停更条目,帮助你更高效地发现值得关注的 TG 资源。")
    lines.append("> ")
    lines.append("> **免责声明**:本项目基于公开互联网信息整理,仅供技术学习、信息导航与研究参考使用。请使用者自行甄别内容,并严格遵守所在地法律法规;因使用相关内容产生的风险与责任,由使用者自行承担。")
    lines.append("")

    lines.append("## 目录")
    lines.append("")

    toc_columns = []
    for t_info in TYPE_ORDER:
        t_id = t_info["id"]
        categories = tree[t_id]
        if not categories:
            continue

        existing_cats = set(categories.keys())
        sorted_cats = [c for c in CATEGORY_ORDER if c in existing_cats]
        sorted_cats += sorted(list(existing_cats - set(CATEGORY_ORDER)))
        toc_columns.append((t_info["name"], build_toc_column(t_info["name"], t_id, sorted_cats)))

    if toc_columns:
        lines.append("<table>")
        lines.append("  <tr>")
        for title, _ in toc_columns:
            lines.append(f"    <th>{title}</th>")
        lines.append("  </tr>")
        lines.append("  <tr>")
        for _, content in toc_columns:
            lines.append(f"    <td valign=\"top\">{content}</td>")
        lines.append("  </tr>")
        lines.append("</table>")
        lines.append("")

    # 生成各版块
    for t_info in TYPE_ORDER:
        t_id = t_info["id"]
        t_name = t_info["name"]
        
        categories = tree[t_id]
        if not categories:
            continue

        lines.append(f'<a id="{make_anchor(t_id)}"></a>')
        lines.append(f"## {t_name}")
        lines.append("")
        
        # 按照预定义的 category 顺序遍历,如果不在预定义里则放到最后
        existing_cats = set(categories.keys())
        sorted_cats = [c for c in CATEGORY_ORDER if c in existing_cats]
        sorted_cats += sorted(list(existing_cats - set(CATEGORY_ORDER)))
        
        for idx, cat in enumerate(sorted_cats, start=1):
            items = categories[cat]
            if not items:
                continue

            lines.append(f'<a id="{make_anchor(t_id, idx)}"></a>')
            lines.append("### " + cat)
            lines.append("")
            lines.append("| 名称 | 链接 | 订阅数 | 简介 |")
            lines.append("| --- | --- | ---: | --- |")

            for item in items:
                title = escape_pipe(compact_text(item.get("clean_title") or item.get("title") or ""))
                desc = escape_pipe(compact_text(item.get("clean_desc") or item.get("description") or "")) or "-"
                url = item.get("url", "")
                count = format_count(item.get("count"))
                lines.append(f"| {title} | [直达]({url}) | {count} | {desc} |")

            lines.append("")

    # Star History 保持在底部
    lines.append("## Star History")
    lines.append("")
    lines.append("[![Star History](https://starchart.cc/jackhawks/rectg.svg?variant=adaptive)](https://starchart.cc/jackhawks/rectg)")
    lines.append("")

    return "\n".join(lines).strip() + "\n"


def main():
    parser = argparse.ArgumentParser(description="README.md 生成器")
    parser.add_argument("--output", type=str, default=None, help="输出路径(默认覆盖 README.md)")
    args = parser.parse_args()

    if not DB_PATH.exists():
        print(f"❌ 未找到数据库: {DB_PATH}")
        sys.exit(1)

    conn = sqlite3.connect(str(DB_PATH))
    conn.row_factory = sqlite3.Row

    readme_content = generate_readme(conn)
    conn.close()

    out_path = Path(args.output) if args.output else README_PATH
    out_path.write_text(readme_content, encoding="utf-8")
    print(f"✅ README 已生成: {out_path}")


if __name__ == "__main__":
    main()


================================================
FILE: scripts/parse_links.py
================================================
#!/usr/bin/env python3
"""
README 链接提取器
从 README.md 中提取所有 t.me 链接,保存到 SQLite 的 links 表中。

用法:
    python3 scripts/parse_links.py
    python3 scripts/parse_links.py --clear   # 清空后重新导入
"""
from __future__ import annotations

import argparse
import re
import sqlite3
from datetime import datetime
from pathlib import Path
from urllib.parse import urlparse

ROOT_DIR = Path(__file__).resolve().parent.parent
README_PATH = ROOT_DIR / "README.md"
DATA_DIR = ROOT_DIR / "data"
DB_PATH = DATA_DIR / "rectg.db"


def init_db(db_path: Path) -> sqlite3.Connection:
    """初始化数据库,创建 links 表。"""
    db_path.parent.mkdir(parents=True, exist_ok=True)
    conn = sqlite3.connect(str(db_path))
    conn.row_factory = sqlite3.Row
    conn.execute("""
        CREATE TABLE IF NOT EXISTS links (
            id              INTEGER PRIMARY KEY AUTOINCREMENT,
            url             TEXT NOT NULL UNIQUE,
            username        TEXT,
            name            TEXT,
            type_hint       TEXT,
            created_at      TEXT NOT NULL,
            updated_at      TEXT NOT NULL
        )
    """)
    conn.commit()
    return conn


def extract_username(url: str):
    """从 t.me URL 中提取用户名。"""
    parsed = urlparse(url.rstrip("/"))
    path = parsed.path.strip("/")
    if not path:
        return None
    if path.startswith("joinchat/"):
        return None
    if path.startswith("+"):
        return None
    parts = path.split("/")
    username = parts[0]
    if username in ("s",):
        return None
    return username


def parse_readme(readme_path: Path) -> list:
    """解析 README.md,提取所有 t.me 链接。"""
    text = readme_path.read_text(encoding="utf-8")
    entries = []

    current_section = ""

    for line in text.splitlines():
        if line.startswith("## "):
            heading = line.lstrip("# ").strip()
            if heading in ("频道", "群组", "机器人"):
                current_section = heading
            else:
                current_section = ""
            continue

        if not current_section:
            continue

        m = re.match(
            r"\|\s*(.+?)\s*\|\s*\[([^\]]*)\]\(([^)]+)\)\s*\|",
            line,
        )
        if m:
            name = m.group(1).strip()
            url = m.group(3).strip()
            if name in ("名称", "---"):
                continue

            type_map = {"频道": "channel", "群组": "group", "机器人": "bot"}
            entry_type = type_map.get(current_section)

            entries.append({
                "name": name,
                "url": url,
                "username": extract_username(url),
                "type_hint": entry_type,
            })

    return entries


def main():
    parser = argparse.ArgumentParser(description="README 链接提取器")
    parser.add_argument("--clear", action="store_true", help="清空 links 表后重新导入")
    args = parser.parse_args()

    print("=" * 60)
    print("  README 链接提取器")
    print("=" * 60)

    conn = init_db(DB_PATH)

    if args.clear:
        conn.execute("DELETE FROM links")
        conn.commit()
        print("🗑️  已清空 links 表")

    # 解析 README
    print(f"\n📄 解析 {README_PATH}...")
    entries = parse_readme(README_PATH)
    print(f"   共找到 {len(entries)} 个链接")

    # 写入数据库
    now = datetime.now().isoformat()
    inserted = 0
    updated = 0

    for entry in entries:
        existing = conn.execute(
            "SELECT id FROM links WHERE url = ?", (entry["url"],)
        ).fetchone()

        if existing:
            conn.execute("""
                UPDATE links SET
                    username = ?, name = ?, type_hint = ?, updated_at = ?
                WHERE url = ?
            """, (entry["username"], entry["name"], entry["type_hint"], now, entry["url"]))
            updated += 1
        else:
            conn.execute("""
                INSERT INTO links (url, username, name, type_hint, created_at, updated_at)
                VALUES (?, ?, ?, ?, ?, ?)
            """, (entry["url"], entry["username"], entry["name"], entry["type_hint"], now, now))
            inserted += 1

    conn.commit()

    # 统计
    total = conn.execute("SELECT COUNT(*) FROM links").fetchone()[0]
    by_type = conn.execute("""
        SELECT type_hint, COUNT(*) as cnt
        FROM links GROUP BY type_hint ORDER BY cnt DESC
    """).fetchall()

    conn.close()

    print(f"\n  📊 完成")
    print(f"  新增: {inserted}")
    print(f"  更新: {updated}")
    print(f"  总计: {total}")
    for row in by_type:
        label = {"channel": "频道", "group": "群组", "bot": "机器人"}.get(row["type_hint"], row["type_hint"])
        print(f"    {label}: {row['cnt']}")
    print(f"\n  数据库: {DB_PATH}")


if __name__ == "__main__":
    main()


================================================
FILE: scripts/refilter.py
================================================
#!/usr/bin/env python3
"""重新评估所有 entries 的过滤规则(含 OpenCC 繁体检测)。"""
import sys
sys.stdout.reconfigure(line_buffering=True)

import re
import sqlite3
from datetime import datetime
from pathlib import Path

import opencc

DB_PATH = Path(__file__).resolve().parent.parent / "data" / "rectg.db"

converter = opencc.OpenCC('t2s')
CJK = re.compile(r'[\u4e00-\u9fff\u3400-\u4dbf\uf900-\ufaff]')

MIN_CH_SUB = 1000
MIN_GR_MEM = 200
INACTIVE_DAYS = 90
TRAD_RATIO = 0.10


def contains_chinese(text):
    return bool(CJK.search(text)) if text else False


def is_traditional(text):
    if not text:
        return False
    cjk = CJK.findall(text)
    if len(cjk) < 5:
        return False
    simplified = converter.convert(text)
    diff = sum(1 for a, b in zip(text, simplified) if a != b)
    return diff / max(len(text), 1) >= TRAD_RATIO


def evaluate(entry):
    if not entry["valid"]:
        return 0, "链接无效"
    if entry["private"]:
        return 0, "私密频道/群组"
    if not entry["type"]:
        return 0, "无法识别类型"

    txt = (entry["title"] or "") + (entry["description"] or "")
    if not contains_chinese(txt):
        return 0, "非中文内容"
    if is_traditional(txt):
        return 0, "繁体中文内容"

    t = entry["type"]
    c = entry["count"] or 0

    if t == "channel":
        if c < MIN_CH_SUB:
            return 0, f"订阅数不足 ({c} < {MIN_CH_SUB})"
        la = entry.get("last_active")
        if la:
            try:
                dt_str = la.replace("+00:00", "").replace("Z", "")
                dt = datetime.fromisoformat(dt_str)
                days = (datetime.now() - dt).days
                if days > INACTIVE_DAYS:
                    return 0, f"频道不活跃 ({days}天未更新)"
            except (ValueError, TypeError):
                pass
    elif t == "group":
        if c < MIN_GR_MEM:
            return 0, f"成员数不足 ({c} < {MIN_GR_MEM})"
    elif t == "bot":
        if c is None or c == 0:
            return 0, "无月活用户数据"

    return 1, ""


def main():
    print("🔄 重新评估过滤规则(含 OpenCC 繁体检测)...")

    conn = sqlite3.connect(str(DB_PATH))
    conn.row_factory = sqlite3.Row

    rows = conn.execute("SELECT * FROM entries").fetchall()
    print(f"📊 总条目: {len(rows)}")

    changed = 0
    trad_count = 0

    for i, row in enumerate(rows):
        entry = dict(row)
        new_keep, new_reason = evaluate(entry)

        old_keep = entry["keep"]
        old_reason = entry["filter_reason"] or ""

        if new_keep != old_keep or new_reason != old_reason:
            conn.execute(
                "UPDATE entries SET keep=?, filter_reason=? WHERE id=?",
                (new_keep, new_reason, entry["id"]),
            )
            if new_keep != old_keep:
                old_s = "✅保留" if old_keep else "❌过滤"
                new_s = "✅保留" if new_keep else "❌过滤"
                print(f"  {old_s} → {new_s}: {entry['title'] or '?'} | {new_reason}")
                changed += 1

        if new_reason == "繁体中文内容":
            trad_count += 1

        if (i + 1) % 500 == 0:
            print(f"  已处理 {i + 1}/{len(rows)}...")

    conn.commit()

    s = conn.execute("""
        SELECT
            SUM(keep),
            SUM(CASE WHEN keep=0 THEN 1 ELSE 0 END),
            SUM(CASE WHEN type='channel' AND keep=1 THEN 1 ELSE 0 END),
            SUM(CASE WHEN type='group' AND keep=1 THEN 1 ELSE 0 END),
            SUM(CASE WHEN type='bot' AND keep=1 THEN 1 ELSE 0 END)
        FROM entries
    """).fetchone()
    conn.close()

    print()
    print(f"✅ 完成!状态变更: {changed} 条")
    print(f"   繁体中文过滤: {trad_count} 条")
    print(f"   保留: {s[0]} | 过滤: {s[1]}")
    print(f"   ├ 频道: {s[2]} | 群组: {s[3]} | 机器人: {s[4]}")


if __name__ == "__main__":
    main()


================================================
FILE: scripts/scrape_tgnav.py
================================================
#!/usr/bin/env python3
"""
tg-nav.github.io 链接抓取器
从 tg-nav 的频道页和群组页中提取 Telegram 用户名,导入到 links 表。

注意: tg-nav.github.io 使用 JavaScript 渲染内容,主要内容在静态 HTML 中不可见。
因此本脚本同时使用两种策略:
1. 使用 requests 获取静态 HTML 中的 t.me 链接
2. 内嵌一份从浏览器中预提取的用户名列表作为补充

用法:
    python3 scripts/scrape_tgnav.py
"""
from __future__ import annotations

import re
import sqlite3
from datetime import datetime
from pathlib import Path
from urllib.parse import urlparse, parse_qs

import requests
from bs4 import BeautifulSoup

ROOT_DIR = Path(__file__).resolve().parent.parent
DATA_DIR = ROOT_DIR / "data"
DB_PATH = DATA_DIR / "rectg.db"

HEADERS = {
    "User-Agent": (
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) "
        "AppleWebKit/537.36 (KHTML, like Gecko) "
        "Chrome/120.0.0.0 Safari/537.36"
    ),
}

# 需要排除的用户名(推广/非 TG 内容/通用词)
EXCLUDE_USERNAMES = {
    "s", "joinchat", "proxy", "socks", "share", "iv",
}

# ---------------------------------------------------------------------------
# 从浏览器预提取的用户名(tg-nav 使用 JS 渲染,静态 HTML 获取不到这些)
# 最后更新: 2026-02-20
# ---------------------------------------------------------------------------
BROWSER_EXTRACTED = {
    # 群组
    "simfans", "DocOfCard", "group_shouliumeiyizhifuyou",
    "TGQRYbot", "TeleindexBot", "aiso", "jisouZHbot",
    "PolarisseekBot", "So1234Bot", "zh_secretary_bot",
    "daohangbot", "damosuoyinAdminbot", "TG_index_bot",
    "qunzudaquan_bot", "tg_chs_bot", "SearcheeBot",
    "kuqun_bot", "dh2345_bot", "quannengsobot",
    "TeleSearchMain_bot", "UniversityAlliance_Info",
    "airport_chat", "lilydeyaa", "se_talk", "MFJD99",
    "MoeMeta", "KinhDownChat", "Brahmanjg",
    "OnlineAppleUserGroup", "WeiyouTuwu1", "shufm",
    "sharing_books4u", "shumozyfx", "ReadfineChat",
    "Waikan2023", "paoluqun", "Yiology", "Liyuxuanxue",
    "ubuntuzh", "pythonzh", "P_Y_T_H_O_N",
    "open_source_community", "coder_ot", "V2EXPro",
    "goV2EX", "pan_icu", "GolangCN", "vpschat",
    "dockertutorial", "Clanguagezh", "AndroidDevCn",
    "vpsxinhaoqi", "tgcnx", "haijiaosheque", "tgzhcn",
    "CNderivatives", "hezu1", "wikipedia_zh_n",
    "jichang_user", "gpt_user", "googlevoice", "GVsPbot",
    "zaihuachat", "jianjiaoQUN", "douban_discuss",
    "yummy_best", "NewlearnerGroup", "kejiquchat",
    "hengjiazhihui", "cosplaysharegroup", "xiafengforever",
    "xpyanjiusuo1", "vGiJ3ukDAa80ZDhl", "nekopara",
    "acg_moe", "tsukigroup", "MEME981211", "mio_house",
    "QingjuACG_Chat", "galgame", "abcd13354",
    "RhineDiscussionRoom",
    # 频道 + 群组共有
    "appdododo", "pdcn3", "ruanlu", "lajilao",
    "AppleTVPlus", "KernelSU_group", "ham002",
    "samsung_cn", "xiaomi6666", "cemiuiler", "nasfan",
    "DHDAXCW", "homelab520", "MaoYingShi", "shumeipai",
    "blacktechsharing", "appmiao", "Riocoolapk",
    "ycq_777", "loopdns", "wolfgang88", "LdFriend",
    "plus8889", "youyousharegroup", "nagram_group",
    "Loon0x00", "loveapps", "QuanXApp", "Notionso",
    "netflixchina", "appinn",
    # 频道页
    "Aliyundrive_Share_Group", "Aliyundrive_Share_Channel",
    "photo100percent", "shadiaogenjudi", "xin_jing_bao",
    "yppshare", "alyd_g", "cnphotog", "shadiaoo",
    "xinjingdailychatroom", "shaodiaotu_chat", "ywtrzm",
}


def init_db(db_path: Path) -> sqlite3.Connection:
    """初始化数据库连接。"""
    db_path.parent.mkdir(parents=True, exist_ok=True)
    conn = sqlite3.connect(str(db_path))
    conn.row_factory = sqlite3.Row
    conn.execute("""
        CREATE TABLE IF NOT EXISTS links (
            id              INTEGER PRIMARY KEY AUTOINCREMENT,
            url             TEXT NOT NULL UNIQUE,
            username        TEXT,
            name            TEXT,
            type_hint       TEXT,
            created_at      TEXT NOT NULL,
            updated_at      TEXT NOT NULL
        )
    """)
    conn.commit()
    return conn


def extract_tme_usernames(html: str) -> set[str]:
    """从 HTML 中提取 t.me 用户名。"""
    soup = BeautifulSoup(html, "lxml")
    usernames = set()

    for a_tag in soup.find_all("a", href=True):
        href = a_tag["href"]

        # 模式 1: tg-nav.github.io/detail/{username}
        m = re.search(r'tg-nav\.github\.io/detail/([A-Za-z0-9_]+)', href)
        if m:
            usernames.add(m.group(1))
            continue

        # 模式 2: tg-nav.github.io/go/?username={username}
        m = re.search(r'tg-nav\.github\.io/go/\?username=([A-Za-z0-9_]+)', href)
        if m:
            usernames.add(m.group(1))
            continue

        # 模式 3: t.me/{username}
        parsed = urlparse(href)
        if parsed.hostname in ("t.me", "www.t.me"):
            path = parsed.path.strip("/")
            if not path or path.startswith("joinchat/") or path.startswith("+"):
                continue
            username = path.split("/")[0]
            if username in EXCLUDE_USERNAMES:
                continue
            if re.match(r'^[A-Za-z][A-Za-z0-9_]{3,}$', username):
                usernames.add(username)

    return usernames


def main():
    print("=" * 60)
    print("  tg-nav.github.io 链接抓取器")
    print("=" * 60)

    conn = init_db(DB_PATH)
    session = requests.Session()
    session.headers.update(HEADERS)

    # 合并所有用户名来源
    all_usernames: set[str] = set(BROWSER_EXTRACTED)

    # 尝试从静态 HTML 补充(只能获取推广区的 t.me 链接)
    pages = [
        "https://tg-nav.github.io/",
        "https://tg-nav.github.io/group",
    ]
    for page_url in pages:
        print(f"\n📡 正在抓取: {page_url}")
        try:
            resp = session.get(page_url, timeout=30)
            resp.raise_for_status()
            html_usernames = extract_tme_usernames(resp.text)
            new = html_usernames - all_usernames
            print(f"   静态 HTML 中找到 {len(html_usernames)} 个用户名, 新增 {len(new)} 个")
            all_usernames |= html_usernames
        except requests.RequestException as e:
            print(f"   ⚠️ 请求失败 (将使用预提取数据): {e}")

    print(f"\n📊 合计去重后共 {len(all_usernames)} 个用户名")

    # 写入数据库
    now = datetime.now().isoformat()
    inserted = 0
    skipped = 0

    for username in sorted(all_usernames):
        url = f"https://t.me/{username}"
        name = f"[tg-nav] {username}"

        existing = conn.execute(
            "SELECT id FROM links WHERE url = ? OR username = ?",
            (url, username),
        ).fetchone()

        if existing:
            skipped += 1
            continue

        conn.execute("""
            INSERT INTO links (url, username, name, type_hint, created_at, updated_at)
            VALUES (?, ?, ?, ?, ?, ?)
        """, (url, username, name, None, now, now))
        inserted += 1

    conn.commit()

    # 汇总
    total = conn.execute("SELECT COUNT(*) FROM links").fetchone()[0]
    tgnav_count = conn.execute(
        "SELECT COUNT(*) FROM links WHERE name LIKE '[tg-nav]%'"
    ).fetchone()[0]

    conn.close()

    print(f"\n{'=' * 60}")
    print(f"  📊 汇总")
    print(f"  本次新增: {inserted}")
    print(f"  本次跳过(已存在): {skipped}")
    print(f"  tg-nav 来源总计: {tgnav_count}")
    print(f"  links 表总计: {total}")
    print(f"  数据库: {DB_PATH}")
    print(f"{'=' * 60}")


if __name__ == "__main__":
    main()


================================================
FILE: vercel.json
================================================
{
    "version": 2,
    "buildCommand": "cd web && npm install && npm run build",
    "outputDirectory": "web/dist",
    "framework": "astro"
}

================================================
FILE: web/.gitignore
================================================
# build output
dist/
# generated types
.astro/

# dependencies
node_modules/

# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*


# environment variables
.env
.env.production

# macOS-specific files
.DS_Store

# jetbrains setting folder
.idea/


================================================
FILE: web/README.md
================================================
# Astro Starter Kit: Minimal

```sh
npm create astro@latest -- --template minimal
```

> 🧑‍🚀 **Seasoned astronaut?** Delete this file. Have fun!

## 🚀 Project Structure

Inside of your Astro project, you'll see the following folders and files:

```text
/
├── public/
├── src/
│   └── pages/
│       └── index.astro
└── package.json
```

Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.

There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.

Any static assets, like images, can be placed in the `public/` directory.

## 🧞 Commands

All commands are run from the root of the project, from a terminal:

| Command                   | Action                                           |
| :------------------------ | :----------------------------------------------- |
| `npm install`             | Installs dependencies                            |
| `npm run dev`             | Starts local dev server at `localhost:4321`      |
| `npm run build`           | Build your production site to `./dist/`          |
| `npm run preview`         | Preview your build locally, before deploying     |
| `npm run astro ...`       | Run CLI commands like `astro add`, `astro check` |
| `npm run astro -- --help` | Get help using the Astro CLI                     |

## 👀 Want to learn more?

Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).


================================================
FILE: web/astro.config.mjs
================================================
// @ts-check
import { defineConfig } from 'astro/config';

// https://astro.build/config
export default defineConfig({});


================================================
FILE: web/build-data.js
================================================
import fs from 'fs';
import path from 'path';
import { fileURLToPath } from 'url';

const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);

const README_PATH = path.resolve(__dirname, '../README.md');
const OUT_DIR = path.resolve(__dirname, 'public');
const OUT_FILE = path.resolve(OUT_DIR, 'data.json');

function main() {
    const content = fs.readFileSync(README_PATH, 'utf-8');
    const lines = content.split('\n');

    const data = {
        categories: [],
        types: []
    };

    let currentType = null;
    let currentCategory = null;
    let currentItem = null;
    let currentItemProps = [];
    const categorySet = new Set();
    const categoriesList = [];
    const typeMap = {};

    function parseTableRow(rawLine) {
        const trimmed = rawLine.trim();
        if (!trimmed.startsWith('|') || trimmed === '| --- | --- | ---: | --- |' || trimmed === '| 名称 | 链接 | 订阅数 | 简介 |') {
            return null;
        }

        const parts = trimmed
            .split('|')
            .slice(1, -1)
            .map(part => part.trim());

        if (parts.length < 4) {
            return null;
        }

        const [title, linkCell, countStr, desc] = parts;
        const urlMatch = linkCell.match(/\[(.*?)\]\((.*?)\)/);
        if (!urlMatch) {
            return null;
        }

        const url = urlMatch[2];
        let id = title.replace(/[^a-zA-Z0-9\u4e00-\u9fa5]/g, '').toLowerCase();

        if (url.includes('t.me/')) {
            const urlPart = url.split('t.me/')[1];
            if (urlPart) {
                const rawId = urlPart
                    .replace('joinchat/', '')
                    .split('?')[0]
                    .replace(/[^a-zA-Z0-9_\-]/g, '')
                    .toLowerCase();
                if (rawId) id = rawId;
            }
        }

        return {
            title,
            url,
            countStr,
            desc: desc === '-' ? '' : desc,
            id
        };
    }

    const seoKeywords = {
        "新闻快讯": "吃瓜播报 一手资讯 热点追踪 国际新闻",
        "加密货币": "薅羊毛 币圈发财 搞钱 投资交流 量化交易",
        "影视剧集": "找影视在线看 免费追剧 短剧大全"
    };

    for (const rawLine of lines) {
        if (!rawLine.trim()) {
            if (currentItem && currentType && currentCategory) {
                typeMap[currentType][currentCategory].push(currentItem);
                currentItem = null;
            }
            continue;
        }

        if (rawLine.startsWith('## ') && !rawLine.startsWith('### ') && rawLine.trim() !== '## Star History') {
            currentType = rawLine.substring(3).trim();
            if (!typeMap[currentType]) typeMap[currentType] = {};
            currentCategory = null;
            currentItem = null;
        } else if (rawLine.startsWith('### ')) {
            const fullCat = rawLine.substring(4).trim();
            currentCategory = fullCat;
            if (currentType && !typeMap[currentType][currentCategory]) {
                typeMap[currentType][currentCategory] = [];
            }
            if (!categorySet.has(fullCat)) {
                categorySet.add(fullCat);
                // Extract icon and name (e.g. "📰 新闻快讯" -> icon: "📰", name: "新闻快讯")
                // Use a simpler regex that splits by the first whitespace to safely handle compound ZWJ emojis
                const match = fullCat.match(/^(\S+)\s+(.*)$/);
                if (match) {
                    const catName = match[2].trim();
                    categoriesList.push({
                        icon: match[1],
                        name: catName,
                        fullName: fullCat,
                        keywords: seoKeywords[catName] || "",
                        id: catName.toLowerCase()
                    });
                } else {
                    categoriesList.push({ icon: '📌', name: fullCat, fullName: fullCat, keywords: seoKeywords[fullCat.trim()] || "", id: fullCat.trim() });
                }
            }
            currentItem = null;
        } else if (rawLine.startsWith('| ') && currentType && currentCategory) {
            const tableItem = parseTableRow(rawLine);
            if (tableItem) {
                typeMap[currentType][currentCategory].push(tableItem);
            }
        } else if (rawLine.startsWith('- ')) {
            if (currentItem && currentType && currentCategory) {
                typeMap[currentType][currentCategory].push(currentItem);
            }
            const title = rawLine.substring(2).trim();
            currentItem = { title, desc: '' };
            currentItem.id = title.replace(/[^a-zA-Z0-9\u4e00-\u9fa5]/g, '').toLowerCase(); // Fallback ID
            currentItemProps = [];
        } else if (rawLine.startsWith('  - ') && currentItem) {
            currentItemProps.push(rawLine.substring(4).trim());
            if (currentItemProps.length === 1) {
                currentItem.typeLabel = currentItemProps[0];
            } else if (currentItemProps.length === 2) {
                const urlMatch = currentItemProps[1].match(/\[.*?\]\((.*?)\)/);
                currentItem.url = urlMatch ? urlMatch[1] : '';
                if (currentItem.url.includes('t.me/')) {
                    const parts = currentItem.url.split('t.me/');
                    if (parts.length > 1) {
                        let rawId = parts[1].replace('joinchat/', '').split('?')[0].replace(/[^a-zA-Z0-9_\-]/g, '').toLowerCase();
                        if (rawId) currentItem.id = rawId;
                    }
                }
            } else if (currentItemProps.length === 3) {
                currentItem.countStr = currentItemProps[2];
            } else if (currentItemProps.length === 4) {
                currentItem.desc = currentItemProps[3];
            }
        }
    }
    if (currentItem && currentType && currentCategory) {
        typeMap[currentType][currentCategory].push(currentItem);
    }

    data.categories = categoriesList;

    // Sort categories list based on existing sequence, or just leave as is (it matches README)
    // Flatten types map
    data.types = Object.keys(typeMap).map(type => {
        return {
            name: type,
            categories: Object.keys(typeMap[type]).map(catFullName => {
                return {
                    fullName: catFullName,
                    items: typeMap[type][catFullName]
                };
            }).filter(c => c.items.length > 0)
        };
    }).filter(t => t.categories.length > 0);

    if (!fs.existsSync(OUT_DIR)) {
        fs.mkdirSync(OUT_DIR, { recursive: true });
    }
    fs.writeFileSync(OUT_FILE, JSON.stringify(data, null, 2));
    console.log(`✅ Generated data.json with ${data.categories.length} categories.`);

    // Generate Sitemap
    let sitemapUrls = `  <url>
    <loc>https://www.rectg.com/</loc>
    <lastmod>${new Date().toISOString()}</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>`;

    // Add detail pages to sitemap
    data.types.forEach(t => {
        t.categories.forEach(c => {
            c.items.forEach(item => {
                if (item.id) {
                    sitemapUrls += `\n  <url>
    <loc>https://www.rectg.com/p/${item.id}</loc>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>`;
                }
            });
        });
    });

    const sitemapContent = `<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
${sitemapUrls}
</urlset>`;
    const sitemapPath = path.resolve(OUT_DIR, 'sitemap.xml');
    fs.writeFileSync(sitemapPath, sitemapContent, 'utf-8');
    console.log(`✅ Generated sitemap.xml at ${sitemapPath}`);

    // Generate Robots.txt
    const robotsContent = `User-agent: *
Allow: /

Sitemap: https://www.rectg.com/sitemap.xml`;
    const robotsPath = path.resolve(OUT_DIR, 'robots.txt');
    fs.writeFileSync(robotsPath, robotsContent, 'utf-8');
    console.log(`✅ Generated robots.txt at ${robotsPath}`);
}

main();


================================================
FILE: web/check-css.js
================================================
const puppeteer = require('puppeteer');
(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('http://localhost:4321/p/tnews365');
  const styles = await page.evaluate(() => {
    const header = document.querySelector('.detail-header');
    const info = document.querySelector('.header-info');
    const title = document.querySelector('.detail-title');
    return {
      headerW: header?.getBoundingClientRect().width,
      infoW: info?.getBoundingClientRect().width,
      titleW: title?.getBoundingClientRect().width,
      headerFlex: window.getComputedStyle(header).display,
      infoFlex: window.getComputedStyle(info).flex,
      infoMinWidth: window.getComputedStyle(info).minWidth,
      parentW: header?.parentElement.getBoundingClientRect().width
    };
  });
  console.log(JSON.stringify(styles, null, 2));
  await browser.close();
})();


================================================
FILE: web/check.js
================================================
import { fileURLToPath } from 'url';
import { readFileSync } from 'fs';
import { JSDOM } from 'jsdom';

try {
  const html = readFileSync('dist/index.html', 'utf-8');
  console.log('HTML loaded, length:', html.length);
} catch(e) { console.error(e) }


================================================
FILE: web/package.json
================================================
{
  "name": "web",
  "type": "module",
  "version": "0.0.4",
  "scripts": {
    "dev": "node build-data.js && astro dev",
    "build": "node build-data.js && astro build",
    "preview": "astro preview",
    "astro": "astro"
  },
  "dependencies": {
    "@vercel/analytics": "^1.6.1",
    "@vercel/speed-insights": "^1.3.1",
    "astro": "^5.17.1",
    "pinyin-match": "^1.2.10"
  }
}


================================================
FILE: web/public/data.json
================================================
{
  "categories": [
    {
      "icon": "🆕",
      "name": "新发现频道",
      "fullName": "🆕 新发现频道",
      "keywords": "",
      "id": "新发现频道"
    },
    {
      "icon": "📰",
      "name": "新闻快讯",
      "fullName": "📰 新闻快讯",
      "keywords": "吃瓜播报 一手资讯 热点追踪 国际新闻",
      "id": "新闻快讯"
    },
    {
      "icon": "💻",
      "name": "数码科技",
      "fullName": "💻 数码科技",
      "keywords": "",
      "id": "数码科技"
    },
    {
      "icon": "👨‍💻",
      "name": "开发运维",
      "fullName": "👨‍💻 开发运维",
      "keywords": "",
      "id": "开发运维"
    },
    {
      "icon": "🔒",
      "name": "信息安全",
      "fullName": "🔒 信息安全",
      "keywords": "",
      "id": "信息安全"
    },
    {
      "icon": "🧰",
      "name": "软件工具",
      "fullName": "🧰 软件工具",
      "keywords": "",
      "id": "软件工具"
    },
    {
      "icon": "☁️",
      "name": "网盘资源",
      "fullName": "☁️ 网盘资源",
      "keywords": "",
      "id": "网盘资源"
    },
    {
      "icon": "🎬",
      "name": "影视剧集",
      "fullName": "🎬 影视剧集",
      "keywords": "找影视在线看 免费追剧 短剧大全",
      "id": "影视剧集"
    },
    {
      "icon": "🎵",
      "name": "音乐音频",
      "fullName": "🎵 音乐音频",
      "keywords": "",
      "id": "音乐音频"
    },
    {
      "icon": "🎐",
      "name": "动漫次元",
      "fullName": "🎐 动漫次元",
      "keywords": "",
      "id": "动漫次元"
    },
    {
      "icon": "🎮",
      "name": "游戏娱乐",
      "fullName": "🎮 游戏娱乐",
      "keywords": "",
      "id": "游戏娱乐"
    },
    {
      "icon": "✈️",
      "name": "科学上网",
      "fullName": "✈️ 科学上网",
      "keywords": "",
      "id": "科学上网"
    },
    {
      "icon": "🪙",
      "name": "加密货币",
      "fullName": "🪙 加密货币",
      "keywords": "薅羊毛 币圈发财 搞钱 投资交流 量化交易",
      "id": "加密货币"
    },
    {
      "icon": "📚",
      "name": "学习阅读",
      "fullName": "📚 学习阅读",
      "keywords": "",
      "id": "学习阅读"
    },
    {
      "icon": "🎨",
      "name": "创意设计",
      "fullName": "🎨 创意设计",
      "keywords": "",
      "id": "创意设计"
    },
    {
      "icon": "📡",
      "name": "社媒搬运",
      "fullName": "📡 社媒搬运",
      "keywords": "",
      "id": "社媒搬运"
    },
    {
      "icon": "👗",
      "name": "生活消费",
      "fullName": "👗 生活消费",
      "keywords": "",
      "id": "生活消费"
    },
    {
      "icon": "💬",
      "name": "闲聊交友",
      "fullName": "💬 闲聊交友",
      "keywords": "",
      "id": "闲聊交友"
    },
    {
      "icon": "🔞",
      "name": "福利吃瓜",
      "fullName": "🔞 福利吃瓜",
      "keywords": "",
      "id": "福利吃瓜"
    },
    {
      "icon": "🗂️",
      "name": "综合导航",
      "fullName": "🗂️ 综合导航",
      "keywords": "",
      "id": "综合导航"
    },
    {
      "icon": "🌐",
      "name": "综合其他",
      "fullName": "🌐 综合其他",
      "keywords": "",
      "id": "综合其他"
    },
    {
      "icon": "🏀",
      "name": "体育运动",
      "fullName": "🏀 体育运动",
      "keywords": "",
      "id": "体育运动"
    },
    {
      "icon": "🌍",
      "name": "地区社群",
      "fullName": "🌍 地区社群",
      "keywords": "",
      "id": "地区社群"
    }
  ],
  "types": [
    {
      "name": "频道",
      "categories": [
        {
          "fullName": "🆕 新发现频道",
          "items": [
            {
              "title": "副业",
              "url": "https://t.me/sidehustleus",
              "countStr": "114",
              "desc": "关注副业赚钱、搞钱经验和独立开发",
              "id": "sidehustleus"
            },
            {
              "title": "技术拾荒者",
              "url": "https://t.me/tech_scavenger",
              "countStr": "56",
              "desc": "分享优质技术文章、开源项目与实用工具",
              "id": "tech_scavenger"
            },
            {
              "title": "一个人的产品",
              "url": "https://t.me/solo_product",
              "countStr": "32",
              "desc": "独立开发者、产品设计与运营经验",
              "id": "solo_product"
            },
            {
              "title": "深夜博客",
              "url": "https://t.me/late_night_blog",
              "countStr": "23",
              "desc": "深夜阅读文章、个人随笔与精神角落",
              "id": "late_night_blog"
            },
            {
              "title": "什么值得看",
              "url": "https://t.me/worth_read",
              "countStr": "42",
              "desc": "推荐值得一读的好文章与好书",
              "id": "worth_read"
            },
            {
              "title": "程序员日常",
              "url": "https://t.me/dev_everyday",
              "countStr": "22",
              "desc": "程序员的日常工作、吐槽与经验分享",
              "id": "dev_everyday"
            },
            {
              "title": "小众软件",
              "url": "https://t.me/niche_software",
              "countStr": "53",
              "desc": "发现与分享好用、新奇的小众软件",
              "id": "niche_software"
            },
            {
              "title": "酱酱の日报",
              "url": "https://t.me/jiangdaily",
              "countStr": "148",
              "desc": "每天不只是新闻,更是酱酱的发现日常~ 精选有趣、有料、有灵魂的「热饭」",
              "id": "jiangdaily"
            },
            {
              "title": "财经速报",
              "url": "https://t.me/econ_news_cn",
              "countStr": "44",
              "desc": "最新最快的财经新闻与市场动态资讯",
              "id": "econ_news_cn"
            },
            {
              "title": "AI 工具情报局",
              "url": "https://t.me/AIGongJuQBJ",
              "countStr": "2",
              "desc": "每天更新 AI 工具、软件应用、开源项目和效率产品动态,帮你更快发现真正有用的工具。",
              "id": "aigongjuqbj"
            }
          ]
        },
        {
          "fullName": "📰 新闻快讯",
          "items": [
            {
              "title": "竹新社",
              "url": "https://t.me/tnews365",
              "countStr": "154,414",
              "desc": "7×24不定时编译国内外媒体的即时新闻报道。 查阅新闻资料,前往竹新资料室: 如有任何问题,联系竹新社小编: 注:本频道原创新闻按照CC BY 4.0协议发布",
              "id": "tnews365"
            },
            {
              "title": "风向旗参考快讯",
              "url": "https://t.me/xhqcankao",
              "countStr": "143,596",
              "desc": "风闻奏事,遍查访知。提供互联网科技新闻快讯。发布VPS、网盘等有价值虚拟资产的新闻和交易信息。 本频道谢绝任何政治频道转发消息,请勿让我们的评论区变成一个火药桶。...",
              "id": "xhqcankao"
            },
            {
              "title": "你不知道的内幕消息🅥",
              "url": "https://t.me/inside1024",
              "countStr": "109,769",
              "desc": "一些你不知道的内幕消息,最新资讯、大公司负面、时政财经、网友发布等高质量消息。 投稿/ 内容均来源社交媒体及公共平台,均不代表本频道观点,请酌情浏览",
              "id": "inside1024"
            },
            {
              "title": "电报时报",
              "url": "https://t.me/times001",
              "countStr": "90,825",
              "desc": "投稿点频道左下角对话图标",
              "id": "times001"
            },
            {
              "title": "华尔街见闻 - 财经时讯 AI 实时互动",
              "url": "https://t.me/FinanceNewsDaily",
              "countStr": "48,462",
              "desc": "中国领先的金融信息平台,7×24 覆盖全球股市、外汇、债券、商品动态。 频道特色 • AI 自动解读:每条新闻实时生成投资参考 • 智能问答:使用 /ask 命令深入了解任意资讯 • 秒级推...",
              "id": "financenewsdaily"
            },
            {
              "title": "Solidot",
              "url": "https://t.me/solidot",
              "countStr": "43,794",
              "desc": "solidot.org 非官方 RSS 推送频道。如有侵权,立即删除。 → Buy Ads:",
              "id": "solidot"
            },
            {
              "title": "纽约时报 全文 实时推送",
              "url": "https://t.me/niuyueshibao_rss",
              "countStr": "35,897",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "niuyueshibao_rss"
            },
            {
              "title": "zaobao.sg 早报",
              "url": "https://t.me/zaobaosg",
              "countStr": "33,846",
              "desc": "以睿智亲和的内容,与你共谈天下事。 下载《联合早报》App: zaobao.com.sg/products",
              "id": "zaobaosg"
            },
            {
              "title": "cnBeta.COM中文业界资讯站",
              "url": "https://t.me/cnbeta_com",
              "countStr": "27,703",
              "desc": "cnBeta.COM中文业界资讯站是一个提供IT相关新闻资讯、技术文章和评论的观点的中文网站,报导立场公正中立,网友讨论气氛浓厚,在业界拥有独特的影响力。本频道为非。...",
              "id": "cnbeta_com"
            },
            {
              "title": "不求甚解",
              "url": "https://t.me/fakeye?boost",
              "countStr": "20,981",
              "desc": "在这里分享我日常的所见所思。 by RSS 订阅: 镜像站: 博客(每日更新): 帮助频道助力: 别在评论里发表低智/政治倾向/杠精言论,会被拉黑(关注关系是双向的)。 本频道不接广告",
              "id": "fakeye"
            },
            {
              "title": "荔枝木",
              "url": "https://t.me/lychee_wood",
              "countStr": "17,701",
              "desc": "这个世界很复杂,我尝试着去理解它。 生活不是程序,没有 Ctrl + Z。 由于水平有限,难免有错误和疏漏,请读者进行批评指正。 购物链接为 Aff Link,...",
              "id": "lychee_wood"
            },
            {
              "title": "知乎日报 全文 实时推送",
              "url": "https://t.me/zhihuribao_rss",
              "countStr": "17,329",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "zhihuribao_rss"
            },
            {
              "title": "吴说区块链 新闻与深度",
              "url": "https://t.me/wublock",
              "countStr": "17,059",
              "desc": "吴说:接近真相,更可信赖 区块链新闻报道,深度内容分析 联系我们: 吴说全部渠道,欢迎下载 APP 收听播客: 此为吴说TG中文唯一,请小心电报诈骗,不给任何陌生人转账,小心熟人被盗号诈骗",
              "id": "wublock"
            },
            {
              "title": "云上报刊亭 精选 🅥 -- 新闻,报纸,杂志,电子书,资料 PDF",
              "url": "https://t.me/magazinesclubnew",
              "countStr": "16,191",
              "desc": "有时间就搬运一些 请于下载后24小时内删除,如果喜欢杂志,请购买正 ! Please delete within 24 hours. If you like the magazine, pl...",
              "id": "magazinesclubnew"
            },
            {
              "title": "看新闻 学英语 双语新闻",
              "url": "https://t.me/shuangyunews_rss",
              "countStr": "15,408",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "shuangyunews_rss"
            },
            {
              "title": "美国之音 全文 实时推送",
              "url": "https://t.me/meiguozhiyin_rss",
              "countStr": "15,247",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "meiguozhiyin_rss"
            },
            {
              "title": "科技爱好者周刊",
              "url": "https://t.me/scitech_fans",
              "countStr": "14,761",
              "desc": "记录每周值得分享的科技内容,周五发布。本频道有ruanyf授权,see weekly/issues/885",
              "id": "scitech_fans"
            },
            {
              "title": "ChatGPT / AI新闻聚合",
              "url": "https://t.me/AI_News_CN",
              "countStr": "13,560",
              "desc": "主流AI服务状态页通知  /  汇集全网ChatGPT/AI新闻 #AI #ChatGPT 免费AI聊天 BEST AI中转 2.8折起 支持OpenAI, Claude code, Gemin...",
              "id": "ai_news_cn"
            },
            {
              "title": "纽约时报双语新闻",
              "url": "https://t.me/nyt_bilingual",
              "countStr": "11,332",
              "desc": "《纽约时报》(英语:The New York Times,简写为NYT或NY Times),有时也被称为《时报》,是一份总部设在纽约的美国报纸,具有全球影响力和读者群。...",
              "id": "nyt_bilingual"
            },
            {
              "title": "经济信息联播",
              "url": "https://t.me/eco_cn",
              "countStr": "10,833",
              "desc": "独立,个性的财经、金融资讯早报,汇总美股、A股收市信息,以及提供具有重大影响力的研报",
              "id": "eco_cn"
            },
            {
              "title": "ALL About RSS",
              "url": "https://t.me/aboutrss",
              "countStr": "10,214",
              "desc": "关于 #RSS 技术的 #应用 #周边 #介绍 #方法 #教程 #指南 #讨论 #观点 #技巧 RSS = Really Simple Syndication / Rich Site Sum...",
              "id": "aboutrss"
            },
            {
              "title": "TestFlight News",
              "url": "https://t.me/testflights",
              "countStr": "9,882",
              "desc": "收集分享IOS的TestFlight版申请地址与相关信息、注意事项。 有趣的互联网新闻",
              "id": "testflights"
            },
            {
              "title": "竹新资料库",
              "url": "https://t.me/kt_database",
              "countStr": "9,536",
              "desc": "分享新闻资料。 资讯,前往竹新社主站: 如有任何问题,联系竹新社小编",
              "id": "kt_database"
            },
            {
              "title": "突发新闻",
              "url": "https://t.me/breakingnews_t",
              "countStr": "9,053",
              "desc": "突发新闻推送服务(简体中文) 非严肃版Channel: 深度报道",
              "id": "breakingnews_t"
            },
            {
              "title": "云上报刊亭 精选 🅥 -- 新闻,报纸,杂志,电子书,资料 PDF",
              "url": "https://t.me/magazinesclub",
              "countStr": "8,977",
              "desc": "英文报刊杂志,电子书,报纸,外文杂志精选🅥 Newspaper, magazines and e-book collections 请于下载后24小时内删除,如果喜欢杂志,请购买正版!...",
              "id": "magazinesclub"
            },
            {
              "title": "Readhub",
              "url": "https://t.me/readhub_cn",
              "countStr": "8,411",
              "desc": "每天三分钟的科技新闻聚合阅读,内容主要包括商业动态、科技资讯,每天早 9 点推送当日早报。 → Buy Ads: → More:",
              "id": "readhub_cn"
            },
            {
              "title": "日本 共同网 朝日新闻 日经中文网",
              "url": "https://t.me/jp_rss",
              "countStr": "8,360",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "jp_rss"
            },
            {
              "title": "层叠 - The Cascading",
              "url": "https://t.me/outvivid",
              "countStr": "8,298",
              "desc": "主要话题大概是开源业界新闻。 所有以 #today 标签的内容均为本台编辑的个人意见,可能可以代表本台观点。...",
              "id": "outvivid"
            },
            {
              "title": "财经快讯",
              "url": "https://t.me/fnnew",
              "countStr": "8,265",
              "desc": "最新最全全球财经资讯24小时不间断直播,A股美股操盘必备,帮您第一时间掌握消息面的因素,把握大局、运筹帷幄、决胜千里",
              "id": "fnnew"
            },
            {
              "title": "德国 德国之声 中文全文",
              "url": "https://t.me/dw_rss",
              "countStr": "8,097",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "dw_rss"
            },
            {
              "title": "NS新闻转报",
              "url": "https://t.me/SwitchNewCN",
              "countStr": "7,526",
              "desc": "官方信息请看",
              "id": "switchnewcn"
            },
            {
              "title": "小林家的托尔",
              "url": "https://t.me/TooruchanNews",
              "countStr": "7,278",
              "desc": "非资讯向的个人自媒体,发布内容和更新频率全看心情。 整合: 本频道独立运营,不属于“For Works”系列频道。...",
              "id": "tooruchannews"
            },
            {
              "title": "FT中文网 全文 实时推送",
              "url": "https://t.me/ftzhongwen_rss",
              "countStr": "7,186",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "ftzhongwen_rss"
            },
            {
              "title": "RSS 频道收集",
              "url": "https://t.me/rss_channels",
              "countStr": "7,109",
              "desc": "收集推送 RSS 的频道,把 TG 变成 RSS 阅读器! 欢迎分享 RSS 源、频道! 联系频道管理员: 获取即时预览可发送原文链接给: 或 轻松搭建自己的 RSS 机器人: flower...",
              "id": "rss_channels"
            },
            {
              "title": "俄罗斯 卫星通讯社 中文全文",
              "url": "https://t.me/ru_rss",
              "countStr": "6,572",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "ru_rss"
            },
            {
              "title": "Yuan的记事本 分享 软件 新闻 Yuan's Notepad",
              "url": "https://t.me/Yuan_En",
              "countStr": "6,379",
              "desc": "整理搬运一些奇奇怪怪有趣的事~ Organizing and carrying some strange and interesting things~ 会尽可能保留消息源出处(◔.̮◔) ...",
              "id": "yuan_en"
            },
            {
              "title": "乙烷日报",
              "url": "https://t.me/OverDaily",
              "countStr": "5,821",
              "desc": "读者群 本频道文字内容以CC BY 4.0方式授权",
              "id": "overdaily"
            },
            {
              "title": "韩国 中央日报 朝鲜日报",
              "url": "https://t.me/korea_rss",
              "countStr": "5,106",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "korea_rss"
            },
            {
              "title": "法国 国际广播电台 中文全文",
              "url": "https://t.me/rfi_rss",
              "countStr": "4,675",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "rfi_rss"
            },
            {
              "title": "Python潮流周刊",
              "url": "https://t.me/pythontrendingweekly",
              "countStr": "4,508",
              "desc": "由豌豆花下猫主理,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,...",
              "id": "pythontrendingweekly"
            },
            {
              "title": "币圈日报",
              "url": "https://t.me/bidaily",
              "countStr": "4,372",
              "desc": "币圈日报-每日最前沿的币圈新闻资讯",
              "id": "bidaily"
            },
            {
              "title": "&'a ::rynco::UntitledChannel",
              "url": "https://t.me/rynif",
              "countStr": "4,372",
              "desc": "西郊林密无处去,北城雾沉晚风凉。 本频道是: - 推送任何有趣的东西的地方 - 偶尔可以看纸片小姐姐的地方 - 管理员随性吐槽的地方 本频道不是: - 客观的科技新闻频道 - 键政频道 转载...",
              "id": "rynif"
            },
            {
              "title": "一起偷偷观察 DIYgod",
              "url": "https://t.me/awesomeDIYgod",
              "countStr": "4,258",
              "desc": "频道由 RSSHub 强力驱动,频道目录: #DIYgod的Twitter更新 #DIYgod的博客更新 #DIYgod喜欢的网易云音乐 #DIYgod的豆瓣动态 #DIYgod的bilib...",
              "id": "awesomediygod"
            },
            {
              "title": "币圈快讯",
              "url": "https://t.me/btcnewsdaily",
              "countStr": "3,913",
              "desc": "币圈快讯,掌握币圈动态",
              "id": "btcnewsdaily"
            },
            {
              "title": "7x24投资快讯",
              "url": "https://t.me/golden_wind_news",
              "countStr": "3,434",
              "desc": "24 小时投资相关的快讯",
              "id": "golden_wind_news"
            },
            {
              "title": "南方周末 / Southern Weekly",
              "url": "https://t.me/infzm",
              "countStr": "3,225",
              "desc": "在这里,读懂中国 一个简单的南方周末推送频道,由 weVoice 建立。 欢迎的主频道 ,一个独立自由的青少年民主派新闻媒体。 互吹:",
              "id": "infzm"
            },
            {
              "title": "澳大利亚 广播公司 中文全文",
              "url": "https://t.me/abc_rss",
              "countStr": "3,132",
              "desc": "知乎日报 纽约时报 BBC中文 路透中文 美国之音 FT中文网 双语新闻 早起读书 书友群",
              "id": "abc_rss"
            },
            {
              "title": "今日份的豆酱",
              "url": "https://t.me/today_bean",
              "countStr": "2,796",
              "desc": "¯\\_(ツ)_/¯爱看不看,我啥都瞎鸡儿发 个人频道,不是沙雕图频道,只是我自己看到了觉得好玩的会顺便发 观点不同,智商不够,有错就改 评论区禁止键政,禁止侮辱性发言 发新闻不一定经过证实,...",
              "id": "today_bean"
            },
            {
              "title": "全球主流新闻媒体中文速览",
              "url": "https://t.me/allzhnews",
              "countStr": "2,781",
              "desc": "路透中文Investing.com纽约时报美国之音FT中文BBC法广德国之声澳大利亚广播公司俄罗斯卫星通讯社联合早报朝鲜日报中央日报共同网朝日新闻日经中文网半岛电视台苹果日报中央社FT一周排...",
              "id": "allzhnews"
            },
            {
              "title": "开发者日报",
              "url": "https://t.me/cndevdaily",
              "countStr": "1,952",
              "desc": "一个勤劳的机器人,只爬取热门,优质,阅读性强的内容。懒懒的主人创造了我,欢迎关注我。我的 Twitter 账号是 CNDevDaily。官网",
              "id": "cndevdaily"
            },
            {
              "title": "悦读「优质少量RSS聚合」",
              "url": "https://t.me/dailyrss",
              "countStr": "1,629",
              "desc": "文章、图片、视频、音乐、播客RSS订阅聚合频道 部分支持「Tg即时预览/内嵌播放」 订阅内容主要类型为IT、科技类文章、减压向图片音频等 子频道: 物种日历 吃货研究所 友链频道: 资源分享",
              "id": "dailyrss"
            },
            {
              "title": "电报新闻",
              "url": "https://t.me/chinesenewss",
              "countStr": "1,284",
              "desc": "本频道旨在中文类新闻聚合阅读,由于订阅的新闻来源较多,建议关闭频道的消息通知,闲时看一看频道获取一下资讯即可",
              "id": "chinesenewss"
            },
            {
              "title": "辣鸡咕鸽毁我信仰 #CurryMyLife",
              "url": "https://t.me/googleshit",
              "countStr": "1,216",
              "desc": "今天份的 Google 药丸。 话题包含但不限于最近由阿三统治的 Alphabet, Inc. 及其子公司/部门产品,以及相关新闻。 投稿: - - - 放送事故提醒: 已加入 频道消息汇总",
              "id": "googleshit"
            }
          ]
        },
        {
          "fullName": "💻 数码科技",
          "items": [
            {
              "title": "科技圈在花频道",
              "url": "https://t.me/TestFlightCN",
              "countStr": "204,739",
              "desc": "大家多多分享 • 禁止推广/黑产/刷屏/色情/ NSFW • 禁止黄赌毒/宗教/政治/键政 • 禁止撕逼/人身攻击/阴阳怪气 群聊: 广告合作: 侵权/解封/帮助:",
              "id": "testflightcn"
            },
            {
              "title": "油油の科技软件资源分享",
              "url": "https://t.me/youyousharechannel",
              "countStr": "80,434",
              "desc": "专注于Windows、Mac OS、Linux、Android、iPhone、iPad、TV、影-视、福利、磁-力、软-件、插件、脚-本、-破-解、教程、-音.乐等资源分享 X订阅 群组 私信",
              "id": "youyousharechannel"
            },
            {
              "title": "Duyao SpeedTest 科技生活 资讯转发",
              "url": "https://t.me/DuyaoSS",
              "countStr": "70,885",
              "desc": "不定期发布或转发一些资讯 测速不代表推荐,经过长期测速,多次测速,可以慢慢筛选出一些更好的,以及淘汰掉一些总是不太好的… 由于大陆地区网络环境十分复杂,不同地区,...",
              "id": "duyaoss"
            },
            {
              "title": "极客分享",
              "url": "https://t.me/geekshare",
              "countStr": "69,772",
              "desc": "专注分享各种高质量网站、工具、APP、开源项目等一切好玩的东西,以及偶尔开开车 内容索引 加入话题 广告合作 网站",
              "id": "geekshare"
            },
            {
              "title": "每日消费电子观察",
              "url": "https://t.me/CE_Observe",
              "countStr": "65,230",
              "desc": "因广告机器人出没,评论区禁止使用频道身份发言,发送垃圾信息可能会被bot封禁。如果你想匿名、被误封或是在海外生活,...",
              "id": "ce_observe"
            },
            {
              "title": "Yummy",
              "url": "https://t.me/GodlyNews1",
              "countStr": "62,351",
              "desc": "本频道不定期推送科技数码类新资讯,欢迎关注! 发布的内容不代表本频道立场,和你意见不一样的话欢迎在评论区留言表达,但请注意言辞,面斥不雅。 关联群组定期清理不活跃成员和僵尸号,误封请员。...",
              "id": "godlynews1"
            },
            {
              "title": "开源社区",
              "url": "https://t.me/opencfdchannel",
              "countStr": "57,814",
              "desc": "Android/Linux/Windows/macOS/iOS *科技人文资讯 组 投稿请私信 Discord Server:",
              "id": "opencfdchannel"
            },
            {
              "title": "Shadowrocket News",
              "url": "https://t.me/ShadowrocketNews",
              "countStr": "44,771",
              "desc": "Shadowrocket 只有iOS/iPadOS/tvOS 版本. 讨论群组: App Store下载链接:",
              "id": "shadowrocketnews"
            },
            {
              "title": " Apple Nuts",
              "url": "https://t.me/AppleNuts",
              "countStr": "36,103",
              "desc": "一个特别的 Apple 频道 Let’s Think Different. 讨论组",
              "id": "applenuts"
            },
            {
              "title": "LIHAI 分享",
              "url": "https://t.me/lihaiba",
              "countStr": "35,430",
              "desc": "一个分享频道,进频道先看置顶,不定时不定量更新,希望推送内容对你能有帮助 有问题或投稿找资源私聊 bot 助力: LIHAI的收藏夹 GitHub的存档 优质网盘资源分享存档 转载原档请注明...",
              "id": "lihaiba"
            },
            {
              "title": "少数派sspai",
              "url": "https://t.me/sspai",
              "countStr": "34,723",
              "desc": "少数派 (sspai.com) 。Weibo: ,公众号:sspaime",
              "id": "sspai"
            },
            {
              "title": "科技&趣闻&杂记",
              "url": "https://t.me/kejiqu",
              "countStr": "34,266",
              "desc": "分享有价值、有趣的信息! 你也可以来投稿,包括但不限于科技新闻、知识、影视娱乐资讯.... 投稿 群组 合作联络",
              "id": "kejiqu"
            },
            {
              "title": "老毛子Padavan固件发布",
              "url": "https://t.me/pdcn1",
              "countStr": "33,771",
              "desc": "老毛子Padavan固件自助 老毛子Padavan固件IOS自助 老毛子Padavan固件发布",
              "id": "pdcn1"
            },
            {
              "title": "𝗧𝗚𝗴𝗲𝗲𝗸 TG极客",
              "url": "https://t.me/TGgeek",
              "countStr": "32,706",
              "desc": "This channel is no longer maintained. 2019.01.13 - 2022.11.12",
              "id": "tggeek"
            },
            {
              "title": "AI探索指南",
              "url": "https://t.me/aigc1024",
              "countStr": "31,313",
              "desc": "关于AIGC人工智能、思维方式、知识拓展,能力提升等。投稿/",
              "id": "aigc1024"
            },
            {
              "title": "上班划水之无聊图",
              "url": "https://t.me/goworkbitch",
              "countStr": "25,838",
              "desc": "活干完了吗?还在玩手机! 注意:本频道讨论群仅用作评论区,不接受任何人加群,尝试加群会立刻被踢。若误点加入被踢且无法访问评论区,需稍等一会儿即自动解封。 另外,本频道主只有一个人,...",
              "id": "goworkbitch"
            },
            {
              "title": "𝚂𝚙𝚎𝚎𝚍𝙲𝚎𝚗𝚝𝚛𝚎",
              "url": "https://t.me/speedcentre",
              "countStr": "24,229",
              "desc": "二手机场交易 欢迎各位关注 ! 送测请私聊 这里是一个服务型的综合跨境服务提供商测试平台,为各大服务提供商提供包括国内大带宽家庭宽带测试,流媒体解锁情况测试,...",
              "id": "speedcentre"
            },
            {
              "title": "Clash for Windows 汉化公告板",
              "url": "https://t.me/ClashR_for_Windows_Channel",
              "countStr": "21,015",
              "desc": "讨论组: Clash汉化补丁项目地址: GitHub加速下载服务: GitHub汉化工具项目地址",
              "id": "clashr_for_windows_channel"
            },
            {
              "title": "科技圈的日常",
              "url": "https://t.me/misakatech",
              "countStr": "18,922",
              "desc": "科技圈内的大事小事 吹水群:",
              "id": "misakatech"
            },
            {
              "title": "Flippy_Openwrt",
              "url": "https://t.me/openwrt_flippy",
              "countStr": "16,507",
              "desc": "Flippy的Openwrt/Armbian固件 进群链接: 有事进群问,别在帖子下面的讨论组里问,不然群里别人的回复你是看不见的",
              "id": "openwrt_flippy"
            },
            {
              "title": "zrj766的频道",
              "url": "https://t.me/zrj96",
              "countStr": "15,236",
              "desc": "特别感谢:感谢NodeSupport和YxVM 对本频道的赞助和支持。 · 个人小店: · 兴趣杂食向频道,有时候会当朋友圈用,不喜勿喷,友善交流; · 主要内容:数码硬件,VPS/独服,...",
              "id": "zrj96"
            },
            {
              "title": "ChatGPT 精选",
              "url": "https://t.me/AwesomeChatGPT",
              "countStr": "13,447",
              "desc": "ChatGPT 精选资源",
              "id": "awesomechatgpt"
            },
            {
              "title": "〄FW",
              "url": "https://t.me/JISFW",
              "countStr": "12,946",
              "desc": "For Work 系列频道 梗频道: 图频道: 读频道: 妹频道: AI频道: 投稿·反馈·吹水群: 附属 Bot 贴纸包 Bot: 王境泽 Bot: Yaplus Bot: etc... ...",
              "id": "jisfw"
            },
            {
              "title": "那些好看的Tg主题",
              "url": "https://t.me/beautifultgtheme",
              "countStr": "12,616",
              "desc": "分享一些好看的Telegram主题 大部分是Android,官方 如果你需要TgX、IOS、或PC桌面版的主题,请联系我,我尽量做 友情链接: 其他业务开展了",
              "id": "beautifultgtheme"
            },
            {
              "title": "LetITFly News",
              "url": "https://t.me/LetITFlyW",
              "countStr": "9,772",
              "desc": "的频道,主题包括但不限于 Android、Windows、Web、消费电子相关,吹水为主。 愿各位始终享有足够的信息渠道,在心情好有意愿的时候能够做想做的事情。...",
              "id": "letitflyw"
            },
            {
              "title": "此岸情报局",
              "url": "https://t.me/JustReformation",
              "countStr": "7,817",
              "desc": "资源情报资讯更新板! 羊毛、好物、聊天、VIP、软件、Apple、淘宝、京东、福利、App、iOS、老司机、破解、小说、搞笑、资源、视频、中文、Google!源于网络,分享世界! 合作频道",
              "id": "justreformation"
            },
            {
              "title": "MacApp分享频道",
              "url": "https://t.me/macapp_channel",
              "countStr": "7,711",
              "desc": "官网: 官方: 各位有任何问题或者其他软件需求,欢迎通过官方: 或者在网站上提交工单进行反馈,感谢各位的支持",
              "id": "macapp_channel"
            },
            {
              "title": "时间的切片",
              "url": "https://t.me/mactalk",
              "countStr": "7,376",
              "desc": "You can view and join right away.",
              "id": "mactalk"
            },
            {
              "title": "黑科技TG代理TG破解版推特破解破解软件",
              "url": "https://t.me/iPoject",
              "countStr": "5,885",
              "desc": "Telegram,Twitter,Facebook 定制版,关注本频道不迷路噢! 开源交流,黑科技交流,安卓逆向 关注群组",
              "id": "ipoject"
            },
            {
              "title": "今天abc看了啥",
              "url": "https://t.me/abcthoughts",
              "countStr": "5,655",
              "desc": "现在我也不知道这频道发了啥了,各位慢慢吃瓜,将就着看 联系我请去 友链儿",
              "id": "abcthoughts"
            },
            {
              "title": "AIM扩散力场",
              "url": "https://t.me/nekosc",
              "countStr": "3,761",
              "desc": "本频道会不定时推送一些段子、ACG、科技、时事资讯等内容 闲聊&报错&申诉: 关联频道:",
              "id": "nekosc"
            },
            {
              "title": "Milkice's 我是高仿号我根本不懂中文",
              "url": "https://t.me/milkice_portal",
              "countStr": "2,923",
              "desc": "个人频道 音游 / 科技 / 日常 除重大事件外尽量不转发其他频道之消息",
              "id": "milkice_portal"
            },
            {
              "title": "Tesla特斯拉 AI & FSD News",
              "url": "https://t.me/Tesla_share",
              "countStr": "2,849",
              "desc": "追踪物理世界的人工智能进化。 Tesla:FSD 更新、Robotaxi、交付动态 AI:Optimus 机器人、Dojo 算力、xAI 联动 Future:能源、星链及改变世界的硬核科技 ...",
              "id": "tesla_share"
            },
            {
              "title": "moke 的 日常分享、吐槽和动态",
              "url": "https://t.me/mokeyjay_channel",
              "countStr": "2,679",
              "desc": "超能小紫( mok.moe ) 的日常分享、吐槽和动态。以IT科技和日常见闻为主,欢迎关注 插画收藏夹 R18插画收藏夹 照片收藏夹 甜品日记 本频道钦定扯蛋闲聊吐槽群",
              "id": "mokeyjay_channel"
            },
            {
              "title": "蛋挞观察室",
              "url": "https://t.me/ijustseesee",
              "countStr": "2,657",
              "desc": "频道主 投食 ___________ TGCN推荐频道 荔枝木 灵车漂移 沙雕图 AIM扩散立场 不存在的世界",
              "id": "ijustseesee"
            }
          ]
        },
        {
          "fullName": "👨‍💻 开发运维",
          "items": [
            {
              "title": "Legado 开源阅读 频道",
              "url": "https://t.me/Legado_Channels",
              "countStr": "94,438",
              "desc": "频道内发布小说推文、阅读APK、书源、主题排版及部分阅读重要通知等。 - 频道导航: 入群须知: - 建于 2020/10/15",
              "id": "legado_channels"
            },
            {
              "title": "VPS信号旗播报",
              "url": "https://t.me/vps_xhq",
              "countStr": "40,501",
              "desc": "VPS新闻频道,VPS信号旗是即时发布简要讯息的小组织,关注VPS和通信自由。为你甄选最具价值的信息,提供业界热点新闻调查。 讨论群组: 评论规则: 投稿交谈",
              "id": "vps_xhq"
            },
            {
              "title": "互联网从业者充电站",
              "url": "https://t.me/https1024",
              "countStr": "26,315",
              "desc": "互联网从业者专属 内容多为技术、产品、设计、运营等不同话题内容; 目标人群为程序员、设计师、产品经理、运营管理等不同职能。 投稿/ 内容来源网络",
              "id": "https1024"
            },
            {
              "title": "ACL4SSR",
              "url": "https://t.me/ACL4SSR",
              "countStr": "25,365",
              "desc": "打开支付宝首页搜\"711629184\"领红包,领到大红包的小伙伴赶紧使用哦! 群组只是为了启用评论功能而设置的,所以请不要加入。如需评论,...",
              "id": "acl4ssr"
            },
            {
              "title": "Project X Channel",
              "url": "https://t.me/projectXtls",
              "countStr": "23,978",
              "desc": "Donation: 中文群组: Русский: Persian: GitHub:",
              "id": "projectxtls"
            },
            {
              "title": "如有乐享",
              "url": "https://t.me/ruyoblog",
              "countStr": "23,677",
              "desc": "主要更新如有乐享博客内容,以及其他几个朋友的频道干货。偏云服务器,优惠活动,羊毛信息,以及各种BUG。 群组: 博客: 社区: 频道评论区拒绝一切阴阳怪气!谢谢",
              "id": "ruyoblog"
            },
            {
              "title": "Cool Scripts",
              "url": "https://t.me/cool_scripts",
              "countStr": "16,685",
              "desc": "QuanX, Loon, Surge, JsBox, Pythonista, Scriptable, Shortcuts等脚本分享",
              "id": "cool_scripts"
            },
            {
              "title": "mini",
              "url": "https://t.me/Orzmini",
              "countStr": "15,750",
              "desc": "讨论群组 项目地址 mini计划-收录,整理,制作图标,调整为适合网络调试软件调用的样式和格式(目前已支持Quantumult X、Loon、Pharos Pro及BoxJS)",
              "id": "orzmini"
            },
            {
              "title": "靠谱VPS推荐(默认带aff) - VPS仓/古博",
              "url": "https://t.me/vpscang",
              "countStr": "11,474",
              "desc": "VPS推荐, VPS仓补货等信息. 默认所有信息都带aff == 网站: VPS推荐: www.gubo.org VPS大全: www.vpscang.com VPS信息(自行甄别): of...",
              "id": "vpscang"
            },
            {
              "title": "Arch Linux Chinese Messages",
              "url": "https://t.me/archlinuxcn",
              "countStr": "10,870",
              "desc": "Arch Linux 中文相关信息 跟进 Arch Linux 日常踩坑预警,翻译官方新闻, testing 测试预警等。另有 提供滚动打包记录。...",
              "id": "archlinuxcn"
            },
            {
              "title": "大虾的编程资源库/码农/程序员资源",
              "url": "https://t.me/programmingsrchub",
              "countStr": "8,887",
              "desc": "简介:大虾本职工作为程序员,本频道持续分享大虾的编程资源库/码农/程序员资源。 有啥问题可以群里问,求书的可以代找,因为时间有限,每天仅前3个。 加群、业务对接:",
              "id": "programmingsrchub"
            },
            {
              "title": "编程随想推荐书籍(非官方)#声援编程随想",
              "url": "https://t.me/programthi
Download .txt
gitextract_9pt9jjdv/

├── .gitignore
├── LICENSE
├── README.md
├── package.json
├── requirements.txt
├── scripts/
│   ├── categorize.py
│   ├── crawl.py
│   ├── generate_readme.py
│   ├── parse_links.py
│   ├── refilter.py
│   └── scrape_tgnav.py
├── vercel.json
└── web/
    ├── .gitignore
    ├── README.md
    ├── astro.config.mjs
    ├── build-data.js
    ├── check-css.js
    ├── check.js
    ├── package.json
    ├── public/
    │   ├── data.json
    │   ├── manifest.json
    │   ├── robots.txt
    │   ├── sitemap.xml
    │   └── sw.js
    ├── src/
    │   ├── components/
    │   │   └── Card.astro
    │   ├── layouts/
    │   │   └── Layout.astro
    │   ├── pages/
    │   │   ├── index.astro
    │   │   └── p/
    │   │       └── [id].astro
    │   ├── scripts/
    │   │   └── main.js
    │   └── styles/
    │       └── style.css
    └── tsconfig.json
Download .txt
SYMBOL INDEX (65 symbols across 9 files)

FILE: scripts/categorize.py
  function _remove_prohibited_context (line 33) | def _remove_prohibited_context(text: str) -> str:
  function is_harmful (line 38) | def is_harmful(text: str) -> bool:
  function is_non_simplified_chinese (line 48) | def is_non_simplified_chinese(text: str) -> bool:
  function remove_emoji (line 71) | def remove_emoji(text: str) -> str:
  function clean_text_advanced (line 77) | def clean_text_advanced(text: str, title: str = "") -> str:
  function clean_title_advanced (line 138) | def clean_title_advanced(title: str) -> str:
  function _remove_rule_context (line 161) | def _remove_rule_context(text: str) -> str:
  function determine_category (line 370) | def determine_category(title: str, desc: str) -> str:
  function main (line 397) | def main():

FILE: scripts/crawl.py
  function setup_logging (line 73) | def setup_logging(log_path: Path) -> logging.Logger:
  class ProgressTracker (line 110) | class ProgressTracker:
    method __init__ (line 113) | def __init__(self, total: int):
    method tick (line 120) | def tick(self, keep: bool):
    method progress_str (line 127) | def progress_str(self) -> str:
    method summary_str (line 151) | def summary_str(self) -> str:
  function init_db (line 165) | def init_db(db_path: Path) -> sqlite3.Connection:
  function upsert_entry (line 196) | def upsert_entry(conn: sqlite3.Connection, data: dict):
  function parse_subscriber_text (line 261) | def parse_subscriber_text(text: str) -> tuple:
  function crawl_page (line 285) | def crawl_page(session: requests.Session, url: str, username: str) -> dict:
  function crawl_preview_page (line 357) | def crawl_preview_page(session: requests.Session, username: str) -> dict:
  function _request_with_retry (line 407) | def _request_with_retry(
  function _contains_chinese (line 448) | def _contains_chinese(text: str) -> bool:
  function _is_traditional_chinese (line 454) | def _is_traditional_chinese(text: str) -> bool:
  function _is_simplified_chinese_entry (line 472) | def _is_simplified_chinese_entry(entry: dict) -> bool:
  function _is_inactive_channel (line 491) | def _is_inactive_channel(entry: dict) -> bool:
  function _inactive_days (line 503) | def _inactive_days(entry: dict) -> int:
  function should_keep (line 513) | def should_keep(entry: dict) -> tuple:
  function main (line 554) | def main():
  function _random_delay (line 752) | def _random_delay():

FILE: scripts/generate_readme.py
  function make_anchor (line 53) | def make_anchor(section: str, category_index: int | None = None) -> str:
  function format_count (line 59) | def format_count(count) -> str:
  function escape_pipe (line 65) | def escape_pipe(text: str) -> str:
  function compact_text (line 71) | def compact_text(text: str) -> str:
  function build_toc_column (line 77) | def build_toc_column(title: str, section_id: str, categories: list[str])...
  function generate_readme (line 84) | def generate_readme(conn: sqlite3.Connection) -> str:
  function main (line 242) | def main():

FILE: scripts/parse_links.py
  function init_db (line 25) | def init_db(db_path: Path) -> sqlite3.Connection:
  function extract_username (line 45) | def extract_username(url: str):
  function parse_readme (line 62) | def parse_readme(readme_path: Path) -> list:
  function main (line 104) | def main():

FILE: scripts/refilter.py
  function contains_chinese (line 24) | def contains_chinese(text):
  function is_traditional (line 28) | def is_traditional(text):
  function evaluate (line 39) | def evaluate(entry):
  function main (line 79) | def main():

FILE: scripts/scrape_tgnav.py
  function init_db (line 92) | def init_db(db_path: Path) -> sqlite3.Connection:
  function extract_tme_usernames (line 112) | def extract_tme_usernames(html: str) -> set[str]:
  function main (line 147) | def main():

FILE: web/build-data.js
  constant README_PATH (line 8) | const README_PATH = path.resolve(__dirname, '../README.md');
  constant OUT_DIR (line 9) | const OUT_DIR = path.resolve(__dirname, 'public');
  constant OUT_FILE (line 10) | const OUT_FILE = path.resolve(OUT_DIR, 'data.json');
  function main (line 12) | function main() {

FILE: web/public/sw.js
  constant CACHE_NAME (line 1) | const CACHE_NAME = 'rectg-cache-v2';

FILE: web/src/scripts/main.js
  function safeGetStorage (line 14) | function safeGetStorage(key) {
  function safeSetStorage (line 23) | function safeSetStorage(key, value) {
  function showToast (line 47) | function showToast(msg) {
  function initTheme (line 58) | function initTheme() {
  function initSidebar (line 76) | function initSidebar() {
  function highlightPinyin (line 131) | function highlightPinyin(text, matchPositions) {
  function initSearch (line 139) | function initSearch() {
  function initScrollSpy (line 203) | function initScrollSpy() {
  function initInteractions (line 229) | function initInteractions() {
  function initScrollFeatures (line 288) | function initScrollFeatures() {
  function initRouting (line 317) | function initRouting() {
  function initLikes (line 338) | function initLikes() {
  function init (line 373) | function init() {
Condensed preview — 31 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (531K chars).
[
  {
    "path": ".gitignore",
    "chars": 483,
    "preview": "# OS generated files\n.DS_Store\n.DS_Store?\n._*\n.Spotlight-V100\n.Trashes\nehthumbs.db\nThumbs.db\n\n# IDEs and Editors\n.vscode"
  },
  {
    "path": "LICENSE",
    "chars": 11339,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "README.md",
    "chars": 79872,
    "preview": "# rectg · Telegram 中文频道与群组精选\n\n> **rectg** 持续收录高质量 Telegram 中文频道与群组,结合自动化抓取与人工整理,尽量剔除失效链接、低质内容与长期停更条目,帮助你更高效地发现值得关注的 TG 资"
  },
  {
    "path": "package.json",
    "chars": 160,
    "preview": "{\n    \"name\": \"rectg-root\",\n    \"private\": true,\n    \"scripts\": {\n        \"install\": \"cd web && npm install\",\n        \"b"
  },
  {
    "path": "requirements.txt",
    "chars": 116,
    "preview": "requests>=2.31.0\nbeautifulsoup4>=4.12.0\nlxml>=5.0.0\nopencc-python-reimplemented>=0.1.7\nemoji>=2.0.0\nmarkdown>=3.0.0\n"
  },
  {
    "path": "scripts/categorize.py",
    "chars": 13896,
    "preview": "#!/usr/bin/env python3\n\"\"\"\n文本清洗与精细化分类脚本 (categorize.py)\n用于清理标题和描述中的 Emoji、冗余文本,并基于关键字进行自动细分分类。\n\n用法:\n    python3 scripts/"
  },
  {
    "path": "scripts/crawl.py",
    "chars": 23270,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nTelegram 公开页面爬虫\n从 SQLite 的 links 表中获取链接,爬取公开信息,结果存入 entries 表。\n\n前置条件:\n    先运行 parse_links.py "
  },
  {
    "path": "scripts/generate_readme.py",
    "chars": 8470,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nREADME.md 生成器\n从 SQLite 数据库读取已经清洗和分类好的爬虫结果,生成更新后的 README.md。\n\n用法:\n    python3 scripts/generate"
  },
  {
    "path": "scripts/parse_links.py",
    "chars": 4648,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nREADME 链接提取器\n从 README.md 中提取所有 t.me 链接,保存到 SQLite 的 links 表中。\n\n用法:\n    python3 scripts/parse_"
  },
  {
    "path": "scripts/refilter.py",
    "chars": 3668,
    "preview": "#!/usr/bin/env python3\n\"\"\"重新评估所有 entries 的过滤规则(含 OpenCC 繁体检测)。\"\"\"\nimport sys\nsys.stdout.reconfigure(line_buffering=True)"
  },
  {
    "path": "scripts/scrape_tgnav.py",
    "chars": 7058,
    "preview": "#!/usr/bin/env python3\n\"\"\"\ntg-nav.github.io 链接抓取器\n从 tg-nav 的频道页和群组页中提取 Telegram 用户名,导入到 links 表。\n\n注意: tg-nav.github.io 使"
  },
  {
    "path": "vercel.json",
    "chars": 143,
    "preview": "{\n    \"version\": 2,\n    \"buildCommand\": \"cd web && npm install && npm run build\",\n    \"outputDirectory\": \"web/dist\",\n   "
  },
  {
    "path": "web/.gitignore",
    "chars": 264,
    "preview": "# build output\ndist/\n# generated types\n.astro/\n\n# dependencies\nnode_modules/\n\n# logs\nnpm-debug.log*\nyarn-debug.log*\nyarn"
  },
  {
    "path": "web/README.md",
    "chars": 1553,
    "preview": "# Astro Starter Kit: Minimal\n\n```sh\nnpm create astro@latest -- --template minimal\n```\n\n> 🧑‍🚀 **Seasoned astronaut?** Del"
  },
  {
    "path": "web/astro.config.mjs",
    "chars": 122,
    "preview": "// @ts-check\nimport { defineConfig } from 'astro/config';\n\n// https://astro.build/config\nexport default defineConfig({})"
  },
  {
    "path": "web/build-data.js",
    "chars": 7997,
    "preview": "import fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __filename = fileURLToPath(imp"
  },
  {
    "path": "web/check-css.js",
    "chars": 915,
    "preview": "const puppeteer = require('puppeteer');\n(async () => {\n  const browser = await puppeteer.launch();\n  const page = await "
  },
  {
    "path": "web/check.js",
    "chars": 251,
    "preview": "import { fileURLToPath } from 'url';\nimport { readFileSync } from 'fs';\nimport { JSDOM } from 'jsdom';\n\ntry {\n  const ht"
  },
  {
    "path": "web/package.json",
    "chars": 385,
    "preview": "{\n  \"name\": \"web\",\n  \"type\": \"module\",\n  \"version\": \"0.0.4\",\n  \"scripts\": {\n    \"dev\": \"node build-data.js && astro dev\""
  },
  {
    "path": "web/public/data.json",
    "chars": 173083,
    "preview": "{\n  \"categories\": [\n    {\n      \"icon\": \"🆕\",\n      \"name\": \"新发现频道\",\n      \"fullName\": \"🆕 新发现频道\",\n      \"keywords\": \"\",\n "
  },
  {
    "path": "web/public/manifest.json",
    "chars": 406,
    "preview": "{\n    \"name\": \"rectg - Telegram 精选导航\",\n    \"short_name\": \"rectg\",\n    \"description\": \"Telegram 优质中文频道与群组导航\",\n    \"start_"
  },
  {
    "path": "web/public/robots.txt",
    "chars": 66,
    "preview": "User-agent: *\nAllow: /\n\nSitemap: https://www.rectg.com/sitemap.xml"
  },
  {
    "path": "web/public/sitemap.xml",
    "chars": 82112,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n  <url>\n    <loc>htt"
  },
  {
    "path": "web/public/sw.js",
    "chars": 1542,
    "preview": "const CACHE_NAME = 'rectg-cache-v2';\nconst urlsToCache = [\n    '/',\n    '/index.html',\n    '/data.json',\n    '/manifest."
  },
  {
    "path": "web/src/components/Card.astro",
    "chars": 2716,
    "preview": "---\n/**\n * Card.astro\n * Represents a single Telegram channel/group card.\n */\nexport interface Props {\n    id: string;\n "
  },
  {
    "path": "web/src/layouts/Layout.astro",
    "chars": 3550,
    "preview": "---\nimport '../styles/style.css';\n---\n\n<!DOCTYPE html>\n<html lang=\"zh-CN\">\n<head>\n  <meta charset=\"UTF-8\" />\n  <meta nam"
  },
  {
    "path": "web/src/pages/index.astro",
    "chars": 9473,
    "preview": "---\nimport Layout from '../layouts/Layout.astro';\nimport Card from '../components/Card.astro';\nimport fs from 'fs';\nimpo"
  },
  {
    "path": "web/src/pages/p/[id].astro",
    "chars": 25099,
    "preview": "---\nimport Layout from '../../layouts/Layout.astro';\nimport fs from 'fs';\nimport path from 'path';\n\nexport async functio"
  },
  {
    "path": "web/src/scripts/main.js",
    "chars": 14135,
    "preview": "import PinyinMatchModule from 'pinyin-match';\nimport { inject } from '@vercel/analytics';\nimport { injectSpeedInsights }"
  },
  {
    "path": "web/src/styles/style.css",
    "chars": 20293,
    "preview": ":root {\n  /* 亮色模式变量 */\n  --bg-main: #f5f6fa;\n  --bg-card: #ffffff;\n  --bg-sidebar: #ffffff;\n  --bg-hover: #f0f2f5;\n  --t"
  },
  {
    "path": "web/tsconfig.json",
    "chars": 109,
    "preview": "{\n  \"extends\": \"astro/tsconfigs/strict\",\n  \"include\": [\".astro/types.d.ts\", \"**/*\"],\n  \"exclude\": [\"dist\"]\n}\n"
  }
]

About this extraction

This page contains the full source code of the jackvale/rectg GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 31 files (485.5 KB), approximately 178.3k tokens, and a symbol index with 65 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!