ホームページ  >  記事  >  バックエンド開発  >  マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

Python当打之年
Python当打之年転載
2023-08-10 16:19:292638ブラウズ


この記事では主に、Python を使用してマグネット リンクを実装し、動画を一括ダウンロードする方法を紹介します。

数日前、友人が私に大量のマグネット リンクを送ってきました。比較的良い映画なので、今後 2 日間でゆっくり見られるとのことでした。でもリンクが多すぎて、一つ一つ追加してダウンロードするのは大変!そこで、いくつかの自動ダウンロード方法を試してみることにしました。

最初にいくつかの既存のダウンロード ツールの API を探してみましたが、残念ながら見つかりませんでしたが、より興味深いライブラリ pypiwin32 を見つけました。一部の Windows コマンドを実行するために使用されます。これも素晴らしい図書館です。以前エクセルの処理に使用していました。現時点では、win32を使用してThunderを自動駆動し、シード接続の一括自動ダウンロードを実現する予定です。

pypiwin32 ライブラリについて、Dispatch 関数に気づきました、これを使えば Thunder を直接駆動できるはずです。この機能は、本コンピュータに登録されているインストールソフトウェア名を取得するだけで、修正済みソフトウェアに接続するための機能です。登録名を見つけるプロセスを簡素化するために、ここに Xunlei の登録名を直接書き込みました:

ThunderAgent.Agent.1

私のローカルの登録名は上記のものです。もちろん、上記が機能しない場合は、次のこともできます。次のことを試してください:

ThunderAgent.Agent64.1

現在のバージョンの Thunder 9 または Thunder 10 では問題ないはずです。

それでは、自動化の旅を始めましょう!

まず、pypiwin32 ライブラリをダウンロードする必要があり、pip を使用して直接インストールします。

pip install pypiwin32

ダウンロード速度が遅すぎる場合は、ダウンロードする清華ソースを指定できます:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pypiwin32

マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

これで、このモジュールを直接使用できるようになります。

主に Dispatch 関数を使用し、この関数に Thunder の登録名を入れます。 Thunderの読み込みを完了します。

<br/>
from win32com.client import Dispatch
thunder = Dispatch(&#39;ThunderAgent.Agent.1&#39;)

Thunder が正常に起動したら、Thunder にタスクを追加できます。

現時点では、AddTask メソッドを使用します。

3 つのパラメーターを AddTask メソッドに渡す必要があります:

thunder.AddTask(磁力连接,
                下载保存的文件名,
                保存路径
                )

その後は、CommitTasks 関数を使用してタスクを送信するだけです。

完全なコードは次のとおりです:

from win32com.client import Dispatch

thunder = Dispatch(&#39;ThunderAgent.Agent.1&#39;)
url = "ftp://ygdy8:ygdy8@yg39.dydytt.net:3010" \
"/阳光电影www.ygdy8.com.追龙番外之十亿探长" \
".HD.1080p.国语中字.mkv"
filename = "追龙番外之十亿探长.mkv"
thunder.AddTask(url, filename, r"C:\迅雷下载")
thunder.CommitTasks()
print("任务已建立,开始下载:{}....".format(filename))

これがコードのすべてです。ただし、Thunder の場合は、まだいくつかの設定を行う必要があります。

マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

#ワンクリック ダウンロードを確認し、デフォルトのダウンロード方法で即時ダウンロードを選択する必要があります。

以上です。以下はエフェクト ビデオです:

次に、ダウンロード用の複数のタスクを作成します。 「Love Apartment 5」のリソースをデモンストレーションとして使用します:

マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

#全部で 36 のエピソードがあります。URL のいくつかのルールが確認でき、すべてのエピソードを取得できます。 36 のエピソードの磁力。接続して、バッチでタスクに追加します:

for i in range(1, 37):
if i < 10:
        i = "0{}".format(i)
    url = "ftp://ygdy8:ygdy8@yg76.dydytt.net:5919/" \
"[阳光电影-www.ygdy8.com]爱情公寓5-{}.mp4"\
        .format(i)
    filename = url.split(&#39;]&#39;)[1]
    thunder.AddTask(url, filename, r"C:\迅雷下载")
print("下载任务建立:{}....".format(filename))
    thunder.CommitTasks()

この時点で、バッチ ダウンロード タスクが確立され、自動バッチ ダウンロードを実行できます。エフェクトビデオは次のとおりです:

如果朋友给你的磁力连接是一个txt文件,那我们还可以读取文件每一行的磁力连接进行下载:

マグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。

import csv
with open("爱情公寓资源.txt", &#39;r&#39;, encoding=&#39;utf-8&#39;) as f:
    reader = csv.reader(f)
    films = [i[0] for i in reader]
thunder = Dispatch(&#39;ThunderAgent.Agent.1&#39;)
for film in films:
    thunder.AddTask(film, film[-12:], r"C:\迅雷下载")
    thunder.CommitTasks()

怎么样是不是很棒?你也来试试吧!

以上がマグネット リンクを使用してトレントをバッチ ダウンロードする 10 行の Python コードを使用すれば、休暇が退屈になることはもうありません。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はPython当打之年で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。