mirror-leech-telegram-bot - Aria/qBittorrentテレグラムミラー/ヒルボット

(Aria/qBittorrent Telegram mirror/leech bot)

Created at: 2021-10-03 02:12:12
Language: Python
License: GPL-3.0

これは、インターネット上のファイルをGoogleドライブまたはTelegramにミラーリングするためにPythonで記述されたTelegramボットです。python-aria-mirror-botに基づく

特徴:

アナス_

  • qBittorrent
  • qbittorrentを使用してダウンロードする前に、Torrentからファイルを選択してください
  • リーチ(分割、各ユーザーのサムネイル、各ユーザーのドキュメントまたはメディアとしての設定)
  • Torrent / Direct、Zip / Unzip、Mega、Cloneのサイズ制限
  • yt-dlpタスクを除くすべてのタスクの重複を停止します
  • Gドライブのリンクを圧縮/解凍
  • Googleドライブリンクからのファイル/フォルダのカウント
  • リンクの表示ボタン、直接ダウンロードする代わりにブラウザでファイルインデックスリンクを開くための追加ボタン
  • 無制限のタスクのステータスページ
  • クローンステータス
  • 複数のドライブフォルダ/TeamDriveで検索
  • 再帰検索(
    root
    またはTeamDrive IDのみ、フォルダーIDは非再帰的な方法で一覧表示されます)
  • token.pickleによるマルチTDリスト(存在する場合)
  • パスワードの有無にかかわらず、rar、zip、および7zスプリットを抽出します
  • パスワード付きまたはパスワードなしのZipファイル/フォルダ
  • すべてのGdrive機能のサービスアカウントでファイルが見つからない場合は、Token.pickleを使用してください
  • 起動時のランダムサービスアカウント
  • ミラー/リーチ/ウォッチ/クローン/カウント/返信による削除
  • YT-DLP品質ボタン
  • Torrent Search APIを使用して、またはqBittorrent検索エンジンを使用して可変プラグインを使用してトレントを検索します
  • Linux用のDockerイメージのサポート
    amd64, arm64, arm/v7, arm/v6, s390x, arm64/v8
    anasty17/mltb:arm64
    for
    arm64/v8
    またはoracleを使用)
  • 起動時および再起動コマンドを使用してボットを更新します
    UPSTREAM_REPO
  • 特定の比率または時間に達するまでのQbittorrentシード
  • RSSフィードとフィルター。このリポジトリに基づくrss-chan
  • サムネイルを含むヒル設定をデータベースに保存します
  • 1つのコマンドでマルチリンク/ファイルのミラーリング/リーチ/クローン作成
  • ファイルのアップロード/クローン作成用の拡張フィルター
  • 再起動後に不完全なタスクメッセージを取得するための不完全なタスク通知機能は、データベースで機能します。
  • 多くのバグが修正されました

他のリポジトリから

  • 直接ダウンロードリンク、トレント、テレグラムファイルをGoogleドライブにミラーリングする

  • Mega.nzのリンクをGoogleドライブにミラーリングする

  • 誰かのドライブからあなたのドライブにファイルをコピーする(Autorcloneを使用)

  • ダウンロード/アップロードの進行状況、速度、ETA

  • yt-dlpでサポートされているすべてのリンクをミラーリングする

  • Dockerサポート

  • チームドライブへのアップロード

  • インデックスリンクのサポート

  • サービスアカウントのサポート

  • ドライブからファイルを削除する

  • ショーターサポート

  • 複数のトラッカーのサポート

  • シェルとエグゼキュータ

  • sudoユーザーを追加する

  • カスタムファイル名*(直接リンク、テレグラムファイル、yt-dlpのみ。メガリンク、Gdriveリンク、トレントは対象外)

  • パスワードで保護されたファイルを抽出する

  • これらのファイルタイプを抽出して、Googleドライブにアップロードします

    ZIP、RAR、TAR、7z、ISO、WIM、CAB、GZIP、BZIP2、APM、ARJ、CHM、CPIO、CramFS、DEB、DMG、FAT、HFS、LZH、LZMA、LZMA2、MBR、MSI、MSLZ、NSIS、 NTFS、RPM、SquashFS、UDF、VHD、XAR、Z、TAR.XZ

  • サポートされている直接リンク:

    letupload.io、hxfile.co、anonfiles.com、bayfiles.com、antfiles、fembed.com、fembed.net、femax20.com、layarkacaxxi.icu、fcdn.stream、sbplay.org、naniplay.com、naniplay.nanime。 in、naniplay.nanime.biz、sbembed.com、streamtape.com、streamsb.net、feurl.com、pixeldrain.com、racaty.net、1fichier.com、1drv.ms(フォルダやビジネスアカウントではなくファイルでのみ機能します) 、uptobox.com(Uptoboxアカウントはプレミアムである必要があります)およびsolidfiles.com

展開する方法は?

前提条件

  • AからZまでのチュートリアルビデオ:

1.インストール要件

  • このリポジトリのクローンを作成します。
git clone https://github.com/anasty17/mirror-leech-telegram-bot mirrorbot/ && cd mirrorbot
  • Debianベースのディストリビューションの場合
sudo apt install python3 python3-pip

Dockerの公式ドキュメントに従うか、以下のコマンドを使用してDockerをインストールします。

sudo apt install snapd
sudo snap install docker
  • Archとその派生物の場合:
sudo pacman -S docker python
  • セットアップスクリプトを実行するための依存関係をインストールします。
pip3 install -r requirements-cli.txt

2.設定ファイルの設定

cp config_sample.env config.env
  • 次のように言っている最初の行を削除します。
_____REMOVE_THIS_LINE_____=True

残りのフィールドに入力します。各フィールドの意味については、以下で説明します。

1.必須フィールド

  • BOT_TOKEN
    : @BotFatherから取得したテレグラムボットトークン
  • GDRIVE_FOLDER_ID
    :これは、すべてのミラーをアップロードするGoogleドライブフォルダのフォルダ/チームドライブIDです。
  • OWNER_ID
    :ボットの所有者のテレグラムユーザーID(ユーザー名ではない)。
    Int
  • DOWNLOAD_DIR
    :ダウンロードをダウンロードするローカルフォルダへのパス。
  • DOWNLOAD_STATUS_UPDATE_INTERVAL
    :進行状況/ステータスメッセージが更新されるまでの秒単位の時間。
    10
    少なくとも推奨秒数。
    Int
  • AUTO_DELETE_MESSAGE_DURATION
    :時間の間隔(秒単位)。その後、ボットは、即座に表示されることが期待されるメッセージとコマンドメッセージを削除します。
    -1
    自動メッセージ削除を無効にするには、に設定します。
    Int
  • IS_TEAM_DRIVE
    True
    TeamDriveにアップロードする場合に設定します。デフォルトは
    False
    です。
    Bool
  • TELEGRAM_API
    :これは、TelegramファイルをダウンロードするためにTelegramアカウントを認証するためのものです。これはhttps://my.telegram.orgから入手できます。
    Int
  • TELEGRAM_HASH
    :これは、TelegramファイルをダウンロードするためにTelegramアカウントを認証するためのものです。これはhttps://my.telegram.orgから入手できます。

2.オプションのフィールド

  • DATABASE_URL
    :SQLデータベースのURL。このデータベースの生成に従って、データベースを生成します。データはデータベースに保存されます:authおよびsudoユーザー、各ユーザーのサムネイルを含むリーチ設定、rssデータおよび不完全なタスク。:herokuにデプロイし、heroku postgresqlを使用する場合は、config.envファイルからこの変数を削除してください。DATABASE_URLは、heroku変数から取得されます。
  • AUTHORIZED_CHATS
    :承認するグループ/ユーザーのuser_idとchat_idを入力します。それらをスペースで区切ります。
  • SUDO_USERS
    :sudo権限を付与するユーザーのuser_idを入力します。それらをスペースで区切ります。
  • IGNORE_PENDING_REQUESTS
    :再起動後に保留中の要求を無視します。デフォルトは
    False
    です。
    Bool
  • USE_SERVICE_ACCOUNTS
    :サービスアカウントを使用するかどうか。これを機能させるには、以下の「サービスアカウントの使用」セクションを参照してください。デフォルトは
    False
    です。
    Bool
  • INDEX_URL
    https ://gitlab.com/ParveenBhadooOfficial/Google-Drive-Indexを参照してください。
  • STATUS_LIMIT
    :番号を制限します。ボタン付きのステータスメッセージに表示されるタスクの数。:推奨される制限は
    4
    タスクです。
  • STOP_DUPLICATE
    :ボットはドライブ内のファイルをチェックします。ファイルがドライブ内に存在する場合、ダウンロードまたはクローン作成は停止されます。(:ファイルはファイルハッシュではなくファイル名を使用してチェックされるため、この機能はまだ完全ではありません)。デフォルトは
    False
    です。
    Bool
  • CMD_INDEX
    :コマンドインデックス番号。この番号は、すべてのコマンドの最後に追加されます。
  • UPTOBOX_TOKEN
    :uptoboxリンクをミラーリングするUptoboxトークン。Uptoboxプレミアムアカウントから入手してください。
  • TORRENT_TIMEOUT
    :qBittorrentとAria2cを使用したデッドトレントのダウンロードのタイムアウト(秒単位)。
  • EXTENTION_FILTER
    :アップロード/クローンを作成しないファイル拡張。それらをスペースで区切ります。
  • INCOMPLETE_TASK_NOTIFIER
    :再起動後に不完全なタスクメッセージを取得します。データベースと(スーパーグループまたはチャネル)が必要です。デフォルトは
    False
    です。
    Bool

アップデート

  • UPSTREAM_REPO
    https://username:{githubtoken}@github.com/{username}/{reponame}
    :リポジトリがプライベート追加形式の場合は、githubリポジトリリンク。Github設定からトークンを取得します。したがって、再起動するたびに、いっぱいになったリポジトリからボットを更新できます。:Dockerの変更や要件を変更した場合は、更新されたリポジトリを使用して再度デプロイ/ビルドして有効にする必要があります。.gitignoreファイルを削除しないでください。詳細については、これをお読みください
  • UPSTREAM_BRANCH
    :更新のためのアップストリームブランチ。デフォルトは
    master
    です。

ヒル

  • TG_SPLIT_SIZE
    :分割のサイズ(バイト単位)。デフォルトは
    2GB
    です。
  • AS_DOCUMENT
    :テレグラムファイルアップロードのデフォルトタイプ。デフォルトは
    False
    メディアとしての平均です。
    Bool
  • EQUAL_SPLITS
    : TG_SPLIT_SIZEより大きいファイルを同じパーツサイズに分割します(zip cmdでは機能しません)。デフォルトは
    False
    です。
    Bool
  • CUSTOM_FILENAME
    :リーチされたファイル名にカスタムワードを追加します。

qBittorrent

  • BASE_URL_OF_BOT
    :qbittorrentWeb選択を使用するためにボットがデプロイされている有効なBASEURL。URLの形式は
    http://myip
    、である必要があります。ここで、
    myip
    はボットのIP /ドメイン(パブリック)です。それ以外のポートを選択した場合は
    80
    、この形式で記述してください
    http://myip:port
    http
    ではありません
    https
    )。このVarはVPSではオプションであり、アプリのスリープ/アイドリングを回避するためにHerokuに特に必要です。Herokufillの場合
    https://yourappname.herokuapp.com
    。まだアイドリングしていますか?http://cron-job.orgを使用して、Herokuアプリにpingを実行できます。
  • SERVER_PORT
    BASE_URL_OF_BOTポートであるがで
    IS_VPS
    あっても、VPSの場合のみ。
    False
  • WEB_PINCODE
    :空の場合、または
    False
    qbitWeb選択中にピンコードが不要であることを意味します。
    Bool
  • QB_SEED
    :QBトレントは、アップロード後に特定の比率または時間に達するまでシードされ、qbittorrent.confから編集
    MaxRatio
    またはその両方が行われます(制限はありませんが、uはgidによって手動でキャンセルできます)。:1。変更しないでください。2。とでのみ機能します。デフォルトはです。
    GlobalMaxSeedingMinutes
    -1
    MaxRatioAction
    /qbmirror
    /qbzipmirror
    False
    Bool
    • Qbittorrent注:直面しているRAMが問題を超えた場合は、制限を設定し、qbittorrent構成
      MaxConnecs
      を減らし、制限をに設定します。
      AsyncIOThreadsCount
      DiskWriteCacheSize
      32

RSS

  • RSS_DELAY
    :rssリフレッシュ間隔の秒単位の時間。
    900
    少なくとも2番目をお勧めします。デフォルトは
    900
    秒単位です。
  • RSS_COMMAND
    :目的のアクションのコマンドを選択します。
  • RSS_CHAT_ID
    :RSSリンクが送信されるチャットID。チャネルを使用している場合は、チャネルIDを追加します。
  • USER_SESSION_STRING
    :ボットが自分自身または他のボットからコマンドを読み取らないため、ボットをチャネルに追加してからチャネルをグループにリンクしてrssリンクを取得する代わりに、テレグラムアカウントからrssリンクを送信します。セッション文字列を生成するには
    python3 generate_string_session.py
    、repoフォルダをマウントした後にこのコマンドを使用してください。
    • RSS注:必須です。そう
      DATABASE_URL
      RSS_CHAT_ID
      ない場合、すべてのrssコマンドが機能しません。グループでボットを使用する必要があります。ボットをチャネルに追加し、このチャネルをグループにリンクを追加して、ボットからチャネルに送信されたメッセージがを使用せずにグループに転送されるようにすることができます
      USER_STRING_SESSION

プライベートファイル

  • ACCOUNTS_ZIP_URL
    :インデックスリンクから外部に、またはWebページリンクではなく直接ダウンロードリンクによってサービスアカウントをロードする場合のみ。アカウントフォルダをZIPファイルにアーカイブします。これにzipファイルの直接ダウンロードリンクを入力します。インデックスに認証が必要な場合は、以下に示すように直接ダウンロードを追加します。
  • TOKEN_PICKLE_URL
    :インデックスリンクからtoken.pickleを外部にロードする場合のみ。そのファイルの直接リンクをこれに入力します。
  • MULTI_SEARCH_URL
    ここで
    drive_folder
    設定を確認してください。ここにdrive_folderファイルを書き込みます。その要点の生ファイルを開きます。そのURLが必要な変数になります。コミットIDを削除した後は、次の形式である必要があります:https ://gist.githubusercontent.com/username/gist-id/raw/drive_folder
  • YT_COOKIES_URL
    :Youtube認証Cookie。ここでセットアップを確認してください。gist rawリンクを使用し、リンクからコミットIDを削除して、要点からのみ編集できるようにします。
  • NETRC_URL
    :.netrcファイルを作成するには、aria2cおよびyt-dlpの認証が含まれています。gist rawリンクを使用し、リンクからコミットIDを削除して、要点からのみ編集できるようにします。:.ntercを編集した後、dockerを再起動する必要があります。または、herokuにデプロイされている場合は、編集がaria2c認証に関連する場合に備えて、dynoを再起動します。
    • :上記のすべてのURL変数は、後で再度デプロイせずに簡単に編集する場合、またはパブリックフォークからデプロイする場合に使用されます。cliまたはプライベートフォークを使用してデプロイする場合は、これらの変数を空のままにして、token.pickle、accountsフォルダー、drive_folder、.netrc、cookies.txtをrootに直接追加できますが、再構築せずに更新することはできません。または、上記のすべての変数をそのままにしてプライベートを使用してください。 UPSTREAM_REPO。

メガ

  • MEGA_API_KEY
    :mega.nzリンクをミラーリングするMega.nzAPIキー。MegaSDKページから入手してください
  • MEGA_EMAIL_ID
    :プレミアムアカウントを使用するためにmega.nzにサインアップするために使用されるEメールID。
  • MEGA_PASSWORD
    :mega.nzアカウントのパスワード。

ショーター

  • SHORTENER_API
    :ShortenerAPIキーを入力します。
  • SHORTENER
    :短縮URL。
    • サポートされているURL短縮サービス:

    exe.io、gplinks.in、shrinkme.io、urlshortx.com、shortzon.com、bit.ly、shorte.st、linkvertise.com、ouo.io、adfoc.us、cutt.ly

GDTOT

  • CRYPT
    :gdtotgoogleドライブリンクジェネレーターのCookie。次の手順に従ってください。

サイズ制限

  • TORRENT_DIRECT_LIMIT
    :トレント/ダイレクトミラーのサイズを制限します。ユニットを追加しないでください。デフォルトの単位は
    GB
    です。
  • ZIP_UNZIP_LIMIT
    :zipおよびunzipコマンドのサイズを制限します。ユニットを追加しないでください。デフォルトの単位は
    GB
    です。
  • CLONE_LIMIT
    :複製できるGoogleドライブのフォルダ/ファイルのサイズを制限します。ユニットを追加しないでください。デフォルトの単位は
    GB
    です。
  • MEGA_LIMIT
    :メガダウンロードのサイズを制限します。ユニットを追加しないでください。デフォルトの単位は
    GB
    です。
  • STORAGE_THRESHOLD
    :特定のストレージを無料のままにしておくと、ダウンロードすると、この値より少ない空きストレージがキャンセルされます。ユニットを追加しないでください。デフォルトの単位は
    GB
    です。

ボタン

  • VIEW_LINK
    :直接ダウンロードリンクの代わりにブラウザでファイルインデックスリンクを開くための[リンクの表示]ボタン。インデックスコードと互換性があるかどうかを確認し、インデックスからビデオを開いて、URLがで終わるかどうかを確認でき
    ?a=view
    ます
    True
    BhadooIndexコードと互換性があります。デフォルトは
    False
    です。
    Bool

  • ドライブリンク、インデックスリンク、ビューリンクを含む3つのボタンがすでに追加されています。以下のエントリがわからない場合は、ボタンを空のままにしておくことができます。

    • BUTTON_FOUR_NAME
    • BUTTON_FOUR_URL
    • BUTTON_FIVE_NAME
    • BUTTON_FIVE_URL
    • BUTTON_SIX_NAME
    • BUTTON_SIX_URL

トレント検索

  • SEARCH_API_LINK
    :APIアプリのリンクを検索します。このリポジトリのデプロイからAPIを取得します。
    • サポートされているサイト:

    1337x、Piratebay、Nyaasi、Torlock、Torrent Galaxy、Zooqle、Kickass、Bitsearch、MagnetDL、Libgen、YTS、Limetorrent、TorrentFunk、Glodls、TorrentProject、YourBittorrent

  • SEARCH_LIMIT
    :検索APIの検索制限、各サイトの制限であり、全体的な結果の制限ではありません。デフォルトはゼロです(各サイトのデフォルトのAPI制限)。
  • SEARCH_PLUGINS
    :qBittorrent検索プラグインのリスト(github rawリンク)。私はいくつかのプラグインを追加しました、あなたはあなたが望むようにプラグインを削除/追加することができます。主な情報源:qBittorrent Search Plugins(公式/非公式)

3. GoogleOAuthAPIクレデンシャルファイルとtoken.pickleを取得します

ノート

  • 古い認証が変更され、botまたはreplitを使用してtoken.pickleを生成できなくなりました。ブラウザ付きのOSが必要です。
  • Windowsユーザーはpython3とpipをインストールする必要があります。あなたはグーグルから、またはWiszkyチュートリアルからのこの電信からそれらをインストールして使用する方法を見つけることができます。
  • generate_drive_token.py
    生成されたリンクは、ローカルブラウザからのみ開くことができます。
  1. GoogleCloudConsoleにアクセスします
  2. [OAuth同意]タブに移動し、入力して保存します。
  3. [資格情報]タブに移動し、[資格情報の作成]->[OAuthクライアントID]をクリックします
  4. デスクトップと作成を選択します。
  5. token.pickleの有効期限が切れないように、OAuth同意画面アプリを公開します
  6. ダウンロードボタンを使用して、資格情報をダウンロードします。
  7. そのファイルをmirrorbotのルートに移動し、名前をcredentials.jsonに変更します
  8. GoogleAPIページにアクセス
  9. GoogleDriveApiを検索して有効にします
  10. 最後に、スクリプトを実行して、Googleドライブのtoken.pickleファイルを生成します。
pip3 install google-api-python-client google-auth-httplib2 google-auth-oauthlib
python3 generate_drive_token.py

VPSへの展開

重要な注意事項

  1. SERVER_PORT
    変数を、
    80
    または使用するその他のポートに設定する必要があります。
  2. コンテナをクリアするには(これは画像には影響しません):
sudo docker container prune
  1. 画像を削除するには:
sudo docker image prune -a
  1. nproc
    cmdを使用してマシンの処理ユニットの数を確認し、 4倍してから
    AsyncIOThreadsCount
    、qBittorrent.confで編集します。
  2. anasty17/mltb:arm64
    oracleまたはarm64/v8に 使用します。
    • Oracle VPSにデプロイするためのチュートリアルビデオ:
      • Wiszkyに感謝します
      • sudo suを使用する必要はありません。各コマンドの前に、sudoを使用することもできます。


Dockerを使用したVPSへのデプロイ

  • Dockerデーモンを起動し(すでに実行されている場合はスキップします)、snapによってインストールされている場合は、2番目のコマンドを使用します。
sudo dockerd
sudo snap start docker
  • :開始されていない、または開始されていない場合は、以下のコマンドを実行してから開始してみてください。
sudo apt install docker.io
  • Dockerイメージをビルドします:
sudo docker build . -t mirror-bot
  • イメージを実行します。
sudo docker run -p 80:80 mirror-bot
  • 画像を停止するには:
sudo docker ps
sudo docker stop id

docker-composeを使用したVPSへのデプロイ

:80以外のポートを使用する場合は、docker-compose.ymlでも変更してください。

sudo apt install docker-compose
  • Dockerイメージをビルドして実行します。
sudo docker-compose up
  • たとえば、nano(nano start.sh)でファイルを編集した後:
sudo docker-compose up --build
  • 画像を停止するには:
sudo docker-compose stop
  • イメージを実行するには:
sudo docker-compose start
  • Docker用のTortoolkitリポジトリからのチュートリアルビデオ-ポートの作成と確認


Herokuへのデプロイ


エクストラ

@BotFatherで設定されるボットコマンド

mirror - Mirror
zipmirror - Mirror and upload as zip
unzipmirror - Mirror and extract files
qbmirror - Mirror torrent using qBittorrent
qbzipmirror - Mirror torrent and upload as zip using qb
qbunzipmirror - Mirror torrent and extract files using qb
leech - Leech
zipleech - Leech and upload as zip
unzipleech - Leech and extract files
qbleech - Leech torrent using qBittorrent
qbzipleech - Leech torrent and upload as zip using qb
qbunzipleech - Leech torrent and extract using qb
clone - Copy file/folder to Drive
count - Count file/folder of Drive
watch - Mirror yt-dlp supported link
zipwatch - Mirror yt-dlp supported link as zip
leechwatch - Leech through yt-dlp supported link
leechzipwatch - Leech yt-dlp support link as zip
leechset - Leech settings
setthumb - Set thumbnail
status - Get Mirror Status message
rsslist - List all subscribed rss feed info
rssget - Get specific No. of links from specific rss feed
rsssub - Subscribe new rss feed
rssunsub - Unsubscribe rss feed by title
rssset - Rss Settings
list - Search files in Drive
search - Search for torrents with API
cancel - Cancel a task
cancelall - Cancel all tasks
del - Delete file/folder from Drive
log - Get the Bot Log
shell - Run commands in Shell
restart - Restart the Bot
stats - Bot Usage Stats
ping - Ping the Bot
help - All cmds with description

UPSTREAM REPO(推奨)

  • UPSTREAM_REPO
    変数は、リポジトリ内の任意のファイルの編集/追加に使用できます。
  • プライベート/パブリックリポジトリリンクを追加して、そこからすべてのファイルを取得/上書きできます。
  • デプロイする前にtoken.pickleやaccountsフォルダーなどのプライベートファイルの追加をスキップできます。また、config.env以外
    UPSTREAM_REPO
    の変数ダイレクトリンクを追加する必要はありません。プライベートファイルを含むすべてのファイルを取得する場合は、プライベートファイルに入力するだけです。
  • If you added private files while deploying and you have added private
    UPSTREAM_REPO
    and your private files in this private repository, so your private files will be overwritten from this repository. Also if you are using URL variables like
    TOKEN_PICKLE_URL
    then all files from those variables will override the private files that added before deploying or from private
    UPSTREAM_REPO
    .
  • If you filled
    UPSTREAM_REPO
    with the official repository link then be carefull incase any change in requirements.txt your bot will not start after restart. In this case you need to deploy again with updated code to install the new requirements or simply by changing the
    UPSTREAM_REPO
    to you fork link with that old updates or make it empty if deployed master branch.
  • In case you you filled
    UPSTREAM_REPO
    with your fork link be carefull also if you fetched the commits from the official repository.
  • The changes in your
    UPSTREAM_REPO
    will take affect only after restart.
  • UPSTREAM_BRANCH
    don't ever fill heroku here.

Using Service Accounts for uploading to avoid user rate limit

For Service Account to work, you must set

USE_SERVICE_ACCOUNTS
= "True" in config file or environment variables. NOTE: Using Service Accounts is only recommended while uploading to a Team Drive.

1. Generate Service Accounts. What is Service Account?

Let us create only the Service Accounts that we need.

警告:この機能の乱用はこのプロジェクトの目的ではありません。多くのプロジェクトを作成することはお勧めしません。1つのプロジェクトと100のSAで十分に使用できます。また、乱用しすぎるとプロジェクトが禁止される可能性があります。グーグル。

:過去にこのスクリプトからSAを作成したことがある場合は、次を実行してキーを再ダウンロードすることもできます。

python3 gen_sa_accounts.py --download-keys $PROJECTID

注: 1つのサービスアカウントで1日あたり約750 GBをアップロード/コピーでき、1つのプロジェクトで100のサービスアカウントを作成できるため、1日あたり75 TBをアップロードするか、各ファイル作成者から2 TBのクローンを作成できます(アップローダーメール)。

サービスアカウントを作成する2つの方法

これらの方法のいずれかを選択してください

1.既存のプロジェクトにサービスアカウントを作成する(推奨方法)
  • プロジェクトIDを一覧表示します
python3 gen_sa_accounts.py --list-projects
  • このコマンドでサービスを自動的に有効にする
python3 gen_sa_accounts.py --enable-services $PROJECTID
  • 現在のプロジェクトにサービスアカウントを作成する
python3 gen_sa_accounts.py --create-sas $PROJECTID
  • アカウントフォルダとしてサービスアカウントをダウンロードする
python3 gen_sa_accounts.py --download-keys $PROJECTID
2.新しいプロジェクトでサービスアカウントを作成します
python3 gen_sa_accounts.py --quick-setup 1 --new-only

アカウントという名前のフォルダーが作成され、サービスアカウントのキーが含まれます。

2.サービスアカウントを追加します

サービスアカウントを追加する2つの方法

これらの方法のいずれかを選択してください

1.それらをGoogleグループに追加してからチームドライブに追加します(推奨)
  • アカウントフォルダをマウントする
cd accounts
  • アカウントフォルダに作成されるemails.txtファイルにすべてのアカウントからメールを取得します
  • For Windows using PowerShell
$emails = Get-ChildItem .\**.json |Get-Content -Raw |ConvertFrom-Json |Select -ExpandProperty client_email >>emails.txt
  • For Linux
grep -oPh '"client_email": "\K[^"]+' *.json > emails.txt
  • acountsフォルダーのマウントを解除します
cd ..

次に、emails.txtからGoogleグループにメールを追加します。その後、このGoogleグループを共有ドライブに追加してマネージャーに昇格させ、アカウントフォルダーからemail.txtファイルを削除します。

2.それらをチームドライブに直接追加します
  • 走る:
python3 add_to_team_drive.py -d SharedTeamDriveSrcID

データベースの生成

1.鉄道の利用

  • 鉄道に行き、アカウントを作成します
  • 新しいプロジェクトを開始する
  • 押す
    Provision PostgreSQL
  • データベースを作成した後、を押します
    PostgresSQL
  • Connect
    列に移動
  • 変数をコピー
    Postgres Connection URL
    して入力します
    DATABASE_URL

2.HerokuPostgreSQLの使用

3.ElephantSQLの使用

  • elephantsqlに移動し、アカウントを作成します
  • 打つ
    Create New Instance
  • 画面の詳細な指示に従います
  • 打つ
    Select Region
  • 打つ
    Review
  • 打つ
    Create instance
  • データベース名を選択してください
  • データベースのURLをコピーし、
    DATABASE_URL
    変数に入力します

マルチ検索ID

マルチTD/フォルダのリストを使用します。ターミナルでdriveid.pyを実行し、それに従ってください。それはdrive_folderファイルを生成します、またはuは単に

drive_folder
作業ディレクトリにファイルを作成してそれを埋めることができます、以下のフォーマットをチェックしてください:

MyTdName folderID/tdID IndexLink(if available)
MyTdName2 folderID/tdID IndexLink(if available)

.netrcファイルを使用したYt-dlpおよびAria2c認証

yt-dlpまたは保護されたインデックスリンクでプレミアムアカウントを使用するには、次の形式に従って.netrcファイルを作成します。

:netrcではなく.netrcを作成します。このファイルは非表示になるため、非表示のファイルを表示して、作成後に編集します。

フォーマット:

machine host login username password my_password

例:

machine instagram login anas.tayyar password mypassword

Instagram注:公開投稿をダウンロードする場合でもログインする必要があります。最初の試行後、これが別のIPからログインしたことを確認する必要があります(電話アプリから確認できます)。

Youtube注

youtube
認証にはcookies.txtファイルを使用してください。

Aria2cを使用すると、ユーザー名の有無にかかわらず、ボットの組み込み機能を使用することもできます。ここでは、ユーザー名のないインデックスリンクの例を示します。

machine example.workers.dev password index_password

ここで、hostはエクストラクタの名前です(例:Instagram、Twitch)。異なるホストの複数のアカウントを、それぞれ新しい行で区切って追加できます。


Gdtotクッキー

クローンまたはLeechgdtotリンクを作成するには、次の手順に従います。

  1. gdtotにログイン/登録します。
  2. このスクリプトをコピーして、ブラウザのアドレスバーに貼り付けます。
    • :貼り付けた後、スクリプトの先頭でブラウザのアドレスバーに 
      javascript:
       存在するかどうかを確認します。存在しない場合は、以下のように記述します。
    javascript:(function () {
     const input = document.createElement('input');
     COOKIE = JSON.parse(JSON.stringify({cookie : document.cookie}));
     input.value = COOKIE['cookie'].split('crypt=')[1];
     document.body.appendChild(input);
     input.focus();
     input.select();
     var result = document.execCommand('copy');
     document.body.removeChild(input);
      if(result)
        alert('Crypt copied to clipboard');
      else
        prompt('Failed to copy Crypt. Manually copy below Crypt\n\n', input.value);
    })();
    • Enterキーを押すと、ブラウザにアラートが表示されます。
  3. これで、クリップボードにCrypt値が表示されます
    NGxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxWdSVT0%3D
    
  4. これから、 CRYPTの値をconfig.envファイルに貼り付ける必要があります。