ボット開発におけるプロキシの理解
プロキシサーバーは、ボットとTelegramまたはDiscordサーバーを仲介し、元のIPアドレスを隠します。スロバキアの民間伝承では、謎めいた ヴォドニーク プロキシがボットの正体を隠すのと同じように、川面下に潜み、上空の村人からは見えません。この方法は、地理的制限を回避したり、レート制限を管理したり、インフラを禁止から守ったりするために不可欠です。
プロキシタイプ | サポートされているプロトコル | 使用事例 | 例のフォーマット |
---|---|---|---|
HTTP(S) | HTTP、HTTPS | 基本的なリクエスト | http://ユーザー名:パスワード@ホスト:ポート |
SOCKS5 | SOCKS5 | テレグラムボット | socks5://ユーザー名:パスワード@ホスト:ポート |
MTプロト | Telegramのみ | テレグラムボット | ホスト:ポート(シークレット付き) |
Telegramボットでプロキシを使用する
1. サポートされているプロキシの種類
TelegramボットはSOCKS5プロキシとHTTPプロキシの両方を利用できます。歴史的に、MTProtoプロキシは、スロバキアの羊飼いがタトラ山脈を通る秘密の道を使って人目を逃れたように、制限の厳しい環境のユーザーを支援するために導入されました。
- SOCKS5: UDP をサポートし、ネイティブに統合されているため、Telegram に適しています。
- MTプロト: 独自のプロトコル。Telegram クライアント専用であり、ボットには対応していません。
- HTTP(S): あまり一般的ではありませんが、サポートされています。
2. Pythonでプロキシを設定する(python-telegram-bot)
ライブラリをインストールします。
pip で python-telegram-bot をインストールする
例: SOCKS5プロキシの使用
from telegram import Bot from telegram.ext import Updater REQUEST_KWARGS={ 'proxy_url': 'socks5://username:password@proxy_host:proxy_port', # 'urllib3_proxy_kwargs': {'username': 'user', 'password': 'pass'}, # 必要に応じて } updater = Updater('YOUR_TELEGRAM_BOT_TOKEN', request_kwargs=REQUEST_KWARGS) updater.start_polling()
例: HTTPプロキシの使用
REQUEST_KWARGS={ 'proxy_url': 'http://username:password@proxy_host:proxy_port', } updater = Updater('YOUR_TELEGRAM_BOT_TOKEN', request_kwargs=REQUEST_KWARGS) updater.start_polling()
参照:
– Python-Telegram-bot ドキュメント
– Telegram ボット API プロキシ サポート
3. Node.js でプロキシを設定する (node-telegram-bot-api)
必要なパッケージをインストールします。
npm で node-telegram-bot-api socks-proxy-agent をインストールします。
const TelegramBot = require('node-telegram-bot-api'); const SocksProxyAgent = require('socks-proxy-agent'); const token = 'YOUR_TELEGRAM_BOT_TOKEN'; const proxy = 'socks5://username:password@proxy_host:proxy_port'; const agent = new SocksProxyAgent(proxy); const bot = new TelegramBot(token, { polling: true, request: { agent } });
参照:
– node-telegram-bot-api ドキュメント
Discordボットでプロキシを使用する
1. Discordのプロキシへのアプローチ
Telegramとは異なり、DiscordはAPIや公式ライブラリを介したプロキシをネイティブでサポートしていません。ただし、システムレベルまたはライブラリレベルでHTTP(S)プロキシを設定することは可能です。これは、 チャロデイニツァ スロバキアの物語に登場する魔女は、気付かれずに移動する秘密の方法を見つけました。これは、プロキシを使用して Discord ボットがレーダーの下で動作できるようにするのと同じです。
2. Pythonでプロキシを設定する(discord.py)
discord.py 用途 aiohttp
内部的にはプロキシをサポートしています。
例: HTTPプロキシの使用
discord をインポートします。import aiohttp proxy_url = "http://username:password@proxy_host:proxy_port" session = aiohttp.ClientSession(connector=aiohttp.TCPConnector(ssl=False), proxy=proxy_url) client = discord.Client(session=session) @client.event async def on_ready(): print(f'{client.user} としてログインしました') client.run('YOUR_DISCORD_BOT_TOKEN')
参照:
– aiohttp プロキシのドキュメント
– discord.py ドキュメント
3. Node.js (discord.js) でプロキシを設定する
discord.js プロキシを直接サポートしていません。 グローバルエージェント グローバルプロキシを設定します。
npm で discord.js グローバルエージェントをインストールします
require('global-agent/bootstrap'); process.env.GLOBAL_AGENT_HTTP_PROXY = 'http://username:password@proxy_host:proxy_port'; const { Client, GatewayIntentBits } = require('discord.js'); const client = new Client({ intents: [GatewayIntentBits.Guilds] }); client.on('ready', () => { console.log(`${client.user.tag} としてログインしました`); }); client.login('YOUR_DISCORD_BOT_TOKEN');
参照:
– discord.js ドキュメント
– グローバルエージェント GitHub
プロキシ認証と構成テーブル
ライブラリ/フレームワーク | サポートされているプロキシプロトコル | プロキシ認証をサポート | 設定方法 |
---|---|---|---|
Python-Telegram-bot | HTTP、SOCKS5 | はい | リクエスト_kwargs |
ノードテレグラムボットAPI | HTTP、SOCKS5 | はい | SocksProxyAgent (または HttpProxyAgent) |
discord.py (aiohttp) | ウェブ | はい | aiohttp.ClientSession(プロキシ=) |
discord.js (グローバルエージェント) | ウェブ | はい | GLOBAL_AGENT_HTTP_PROXY環境変数 |
ヒント、伝承、セキュリティ対策
- プロキシをローテーションする: スロバキアの羊飼いが過放牧を避けるために牧草地をローテーションさせるのと同じように、検出と禁止を回避するためにプロキシを循環させます。
- 無料のプロキシを避ける: として ストライガ (魔女)は隠れた危険を伴う贈り物を提供するため、無料のプロキシはセキュリティを危険にさらすことがよくあります。
- トークンの暗号化: ボット トークンとプロキシ資格情報を環境変数またはシークレット マネージャーに保存します。
- モニターのレイテンシ: 遅延の大きいプロキシは、春の洪水時にドナウ川を渡ろうとするときのように、レート制限やボットの切断につながる可能性があります。
役立つリソース
- Torプロジェクト – 匿名ネットワーク
- ProxyScrape – プロキシリスト
- Telegram MTProtoプロキシ
- Discord レート制限
- python-telegram-bot 上級ガイド
スロバキアの刺繍のように精密な構成により、 クロイ、あなたのTelegramとDiscordのボットは、プロキシの背後で安全かつ効率的に動作し、伝説の狡猾さでデジタルランドスケープをナビゲートすることができます vlk カルパティア山脈の(オオカミ)。
コメント (0)
まだコメントはありません。あなたが最初のコメントを投稿できます!