• This repository has been archived on 10/May/2022
  • Stars
    star
    210
  • Rank 187,585 (Top 4 %)
  • Language
    Python
  • Created almost 5 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

telegram message search bot, optimized for Chinese search.

Telegram Search Bot

Bot:@awesomeopensource_search_bot

这里是为 @awesomeopensource 打造的搜索 Bot,直接发送你要搜索的内容即可。搜索支持 Lucene 语法。

同时可以为群组、频道、个人提供聊天记录搜索服务。

特性

  • 中文分词引擎
  • 可按日期搜索
  • Telegram Bot 前端
  • 可拓展的定制化搜索引擎

原理

使用 Telegram Client Api 获取频道内所有信息,并持续监听新信息。

将所有信息归档进 Elasticsearch 搜索引擎,用户可以在 Bot 前端执行搜索。

如何搭建

  1. 前提条件

    申请 Telegram MTProto API ID: https://my.telegram.org/app

    申请 Telegram Bot ID:@BotFather

    准备一个 Telegram 账号

    安装 Python3:https://www.python.org/downloads/

  2. 登陆

    clone 下这个项目

    安装依赖: pip install -r requirements.txt

    修改 main.py 中的配置或使用环境变量

    • API_ID:Telegram MTProto API ID
    • API_HASH:Telegram MTProto API ID
    • BOT_TOKEN:从 BotFather 获取的 bot token
    • CHAT_ID:你要搜索的 chat 的 ID,可以使用 @getidsbot 获取。
    • ADMIN_ID:管理员的 ID,可以使用 @getidsbot 获取。

    先创建一个 session 文件夹(mkdir session),运行 python main.py 提示输入手机号和验证码即可,session 文件夹里面会生成几个数据库文件。

  3. 部署

    把 session 文件夹和源码部署到服务器。

    修改 docker-compose.yml 中的环境变量

    使用 docker-compose 部署:docker-compose up -d

    启动完成后用管理员的账号(之前配置的 ADMIN_ID)向 Bot 发送命令 /download_history 下载历史记录。

继续开发

项目的初衷是为 @awesomeopensource 提供搜索服务,目前 Bot 的功能已经足够。 但是如果你有其他功能的需求,比如 按用户搜索、Inline query 等需求,请在 issues 中告诉我。

More Repositories

1

hexo-helper-live2d

Add the Sseexxyyy live2d to your hexo!
JavaScript
3,858
star
2

vscode-vibrancy

Enable Acrylic/Glass effect for your VS Code.
JavaScript
561
star
3

hexo-theme-one

hexo单页面炫酷主题
TypeScript
521
star
4

space-thumbnails

Generates preview thumbnails for 3D model files. Provide a Windows Explorer extensions that adds preview thumbnails for 3D model files.
Rust
378
star
5

Furigana

A web extension, Auto insert furigana (phonetic characters) on Japanese kanji.
JavaScript
218
star
6

Azusa

A WEBGL Audio Spectrum Music Visualizer.
HTML
102
star
7

ddi

Dynamic dependency injection library for rust.
Rust
42
star
8

PasswordQualityCalculator

Calculate the security quality of passwords. Porting from KeePass.
JavaScript
39
star
9

Form

A free and open source Form system
TypeScript
32
star
10

react-typescript-kits

This may be the best boilerplate for react + typescript.
TypeScript
28
star
11

hexo-tag-cplayer

JavaScript
25
star
12

Anything

Digital asset organizing tool for creators.
C#
23
star
13

gossip

TypeScript
16
star
14

napi-cs

C#
16
star
15

habitica-cn-proxy

habitica的国内反向代理服务
14
star
16

rust-filament

Rust
6
star
17

HexoBlogKit

JavaScript
6
star
18

djsdoc

Simple JSDoc parser
JavaScript
5
star
19

snow

JavaScript
4
star
20

text-rendering-talk

HTML
3
star
21

babel-plugin-markdown-in-jsx

JavaScript
3
star
22

overwatchBadAnimation

垃圾守望先锋
CSS
3
star
23

AtomicDrive

Rust
3
star
24

statuspage

JavaScript
2
star
25

ideas

Some of my ideas. It is possible to become new project.
1
star
26

dev-container

Dockerfile
1
star
27

faceswap-bot

Python
1
star
28

perfsee-action-test

JavaScript
1
star
29

seesee

Image Viewer for react
TypeScript
1
star
30

split-view

A simple split view for react.
TypeScript
1
star
31

garbage

1
star
32

pixiv-api-server

TypeScript
1
star
33

crypto

Modern lightweight crypto API.
TypeScript
1
star
34

test-results

A series of utility macros for outputting testing results.
Rust
1
star
35

Aki

The browser-side asynchronous resource loads the progress manager
TypeScript
1
star
36

live2d

1
star