Baidu NetDisk Batch Transferプログラムは、 Python 3.10 + Tkinter上に構築されており、主にネットワーク上で共有されているリソースを独自のBaidu NetDiskにバッチバッチバッチに使用しています。さらに、リンクの有効性のバッチ共有とバッチ検出の関数もあります。
プログラムメインインターフェイス:
プログラム開発と編集環境は、 Win10 x64プロフェッショナルバージョンです。オペレーティングシステムはダウンロードして、 Win7直接実行できます。他のオペレーティングシステムは、実行中の環境を自分でコンパイルまたは構成する必要があります。
ダウンロード方法:
exeファイルの最新バージョンをダウンロードします。ファイル名はBaiduPanFilesTransfers.exeです。ダウンロード後に直接開くことができます。BaiduPanFilesTransfers.zipをダウンロードして、ダウンロード後に解凍してください。以前に古いバージョンを実行したことがある場合は、古いファイルを新しいバージョンファイルで上書きして使用してください。
手動編集では、事前にPython 3.6以上をインストールする必要があります。
編集手順は次のとおりです。
Gitをインストールした状態でホストでこのプロジェクトをクローンします。
git clone https://github.com/hxz393/BaiduPanFilesTransfers.gitまたは、プロジェクトホームページのBlue <> CodeボタンをクリックしてDownload ZIPオプションを選択し、ソースコード圧縮パッケージをダウンロードし、ダウンロード後に圧縮パッケージを解凍します。
コマンドラインからこのプロジェクトのパスに切り替えます。
たとえば、Windowsでは、 CMDコマンドプロンプトまたはPowerShellを開き、以下を入力します。
cd B: 2 .脚本B aiduPanFilesTransfers-masterLinux/macosでは、パスセパレーターは異なります。
cd /root/BaiduPanFilesTransfers-master PyCharm IDEとして使用する場合、組み込みコンソールに後続のパッケージングコマンドを直接入力できます。
venvを使用して仮想環境を作成して有効にします。
python -m venv venv
venv S cripts a ctivateLinux/macOSの下で仮想環境を開始するコマンドはわずかに異なります。
python -m venv venv && source venv/bin/activate
インストールプロジェクトの依存関係、中国科学技術大学のミラーソースの使用を指定します。
pip install -r requirements.txt --index https://mirrors.ustc.edu.cn/pypi/web/simple/ Windows用のPythonインストールパッケージは、通常、デフォルトでTkinterをインストールします。 MacOSユーザーは手動でインストールする必要があり、対応するHomeBrewコマンドは次のとおりです。
brew install python-tk # 也可以指定 Python 版本,如 brew install [email protected] pyinstallerコマンドを使用して、実行可能ファイルにパッケージ化します。
pyinstaller -F -w -i BaiduPanFilesTransfers.ico --hidden-import=tkinter --clean -n BaiduPanFilesTransfers BaiduPanFilesTransfers.pyプロセスに例外がない場合、実行可能ファイルBaiduPanFilesTransfers.exe distディレクトリの下で生成されます。
(オプション) deactivateコマンドを使用して、現在の環境を終了します。
venvScriptsdeactivate.bat
Pull RequestをDEVブランチに提出し、確認するのを待って、それをメインブランチに統合してください。
このプログラムは、GPL-3.0ライセンスソースライセンス契約を採用しています。それがオープンソースコミュニティの基本原則に違反した場合、それは個人所有のビジネス目的であり、違反であり、私は法的責任を追求します。
Cookieを取得することは必要なステップです。ほとんどの動作エラーは、誤ったCookieによって引き起こされます。入手方法を注意深くお読みください。
Chromeまたは同様のブラウザ(できればTrateless Windowモード)を使用して、Baidu NetDiskホームページにログインし、 F12を完全にロードした後に押します。网络(Network)タブを選択します。
下の図に示すように、現時点では空にする必要があります。F5 F5押してページを更新すると、複数のレコードを以下に追加します。 mainから始まるレコードをクリックします。メニューが右側に表示され、标头(Headers) 、响应(Response)などが表示されます。ヘッダーページを裏返し、 Cookie:その後、 XFで始まる一連のコンテンツが続きます。これはあなたが見つける必要があるCookiesです。それらをすべて選択し、右クリックしてコピーを選択し、プログラムの対応する入力ボックスに貼り付けます。
mainページの下でCookieを取得する必要があることに注意してください。他のページのCookieは不完全であり、さまざまな転送障害が発生します。アドレスへの直接アクセス:メインページ
保存場所が空白のままで、埋められない場合、リソースはルートディレクトリに保存されます。 Baidu Netdiskのホームページを開くと、表示されます。
ファイルの保存場所を入力した後、ディレクトリが存在しない場合、新しいディレクトリが自動的に作成されます。ディレクトリが既に存在する場合、指定されたディレクトリに直接転送されます。
セカンダリディレクトリの指定をサポートします。たとえば、 testディレクトリの2024-01-02ディレクトリに保存する場合は、 test/2024-01-02に記入してください。
保存場所(ディレクトリ名)には、以下を含む英語のほとんどの特別なシンボルを含めることはできません。 > 、 | 、 * ? 、 : 、 など。そうしないと、プログラムは操作を検出して中断します。
Save Path Plusファイル名の長さが255文字を超える場合、Baidu NetDiskクライアントを使用してファイルをダウンロードすると失敗するため、短いディレクトリ名を使用してみてください。
このプログラムは、可能な限り一般的なBaiduネットワークディスクリンク形式に適合しています。プロンプト「サポートされていないリンク」または「リンクエラー」が表示される場合は、入力リンクが次の形式のいずれかに準拠しているかどうかを確認してください。
https://pan.baidu.com/s/1nvBwS25lENYceUu3OMH4tg 6img
https://pan.baidu.com/s/1nvBwS25lENYceUu3OMH4tg ? pwd=6img
https://pan.baidu.com/s/1nvBwS25lENYceUu3OMH4tg 提取码:6img
https://pan.baidu.com/s/1nvBwS25lENYceUu3OMH4tg 提取:6img
https://pan.baidu.com/s/1EFCrmlh0rhnWy8pi9uhkyA
https://pan.baidu.com/share/init ? surl=W7U9g47xiDez_5ItgNIs0w
https://pan.baidu.com/e/1X5j-baPwZHmcXioKQPxb_w rsss
目录名 https://pan.baidu.com/s/1eOrU0S9VLoe4GgAy2gZlmw z6r4すべての情報が入力されたら、[バッチ転送]ボタンをクリックして、バッチ転送バイドゥネットワークディスクリンクを実行します。
転送プロセス中に、「一時停止/回復」するか、プログラムウィンドウの右上隅にある閉じるボタンを直接クリックして実行を中止できます。
転送速度を高速化する場合は、より多くのプログラムを開き、同時にバッチで転送できます。総伝達速度は、1分あたり60リンクを超えてはなりません。
バッチ共有とは、指定されたディレクトリ内のファイルまたはフォルダーの共有を指し、それぞれが共有リンクを生成します。 == Baidu Netdiskは現在、Batch共有関数を起動しました。これは、Web側で操作でき、優先されます。 ==
バッチ共有を実行する前に、 Cookiesとターゲットパスを共有するターゲットパスを入力し、[バッチ共有]ボタンをクリックして実行の準備をする必要があります。共有設定ポップアップウィンドウがポップアップします:
共有期間と抽出コードを設定した後(ランダムをサポート)、[OK]をクリックしてバッチ共有を開始します。実行が完了するのを待ちます。この時点で、共有されるファイル名は元のリンク入力ボックスに挿入されます。生成された共有リンクと結果は、ログ入力ボックスに表示されます。
Baidu Netdiskは固定されています。単一のアカウントは、1日あたり最大300の共有リンクしか作成できず、後でエラーが報告されますが、これはプログラムの制限ではありません。
このプログラムは、デフォルトでネットワークシステムプロキシをバイパスしますが、ネットワークグローバルプロキシをバイパスすることはできません。
特別なネットワーク環境にいる場合は、正常にBaiduネットワークディスクにアクセスするためにネットワークシステムプロキシモードを構成する必要があります。 「システムプロキシ」ボックスをチェックした後、転送を実行します。
複数の異なるディレクトリへのファイルの転送を指定するために使用されます。効果は次のとおりです。
チェックした後、自设目录https://pan.baidu.com/s/1eOrU0S9VLoe4GgAy2gZlmw z6r4サポートされます。自设目录「Restoration Directory」(ステップ2に入力されたディレクトリ)に作成され、ファイルは自设目录に転送されます。
通常のリンク、つまりディレクトリ名なしでhttpで始まるリンクを入力すると、各リンクは、番号に名前が付けられたサブディレクトリに個別に保存されます。たとえば、最初のリンクはtest test/1に保存され、2番目のリンクはtest/2に保存されます。
このモードでは、転送ディレクトリを入力する必要があることに注意してください。接続内の指定されたディレクトリ名はスペースを含めることはできません。そうしないと、以前のスペースのみがディレクトリ名とみなされます。
このモードをチェックしたら、[バッチ転送]をクリックして実行します。入力されたリンクの可用性がチェックされ、転送操作は実行されません。
検証コードがポップされるため、同じリンクを頻繁に検出しないでください。
プログラムを使用するときは、まず以下に要約されている一般的な問題とソリューションのいくつかをチェックしてください。すべての問題に問題があるかどうかを確認してください。それらのいずれも役に立たない場合は、フィードバックを送信してください。
通常のリンクをリリースするときに発生する問題は、2023.09.20に最初に発見されました。
理由:Baidu Netdisk Cookieが調整され、元の保存されたCookieは使用できなくなりました。
解決策:ブラウザで新しいCookieを再ゲットすると、正常に機能します。
古いバージョンを数秒でリンクに転送するときにエラーが発生しました。
原因:2番目のパスは使用できなくなりました。
解決策:新しいバージョンでは、関連するコードが削除されました。新しいバージョンにアップグレードしてください。
プログラムは突然転送することはできません。
原因:Cookieは無効または間違っています。 Baidu Netdiskは改訂され、プログラムは無効です。
解決策:まず、ブラウザのTragenessモードを介してBaidu NetDiskホームページを開き、ログインしてCookieが正常に機能するかどうかを確認してみてください。コンピューターやアカウントが多すぎて機能しない場合は、プログラムを修理および更新する必要があることを意味します。発行フィードバックを提出できます。
次のリンクは、「リンク訪問が多すぎる」とプロンプトします。
原因:Cookieが正しくありません。
解決策:ブラウザのトレースレスモードを介してBaidu NetDiskホームページを開き、再度ログインしてCookieを取得します。
理由:通常、抽出コードとのリンクで見られます。抽出されたコードが正しいかどうかに関係なく、短期間で3回以上リンクにアクセスすると、Baidu Netdisk防御メカニズムがトリガーされます。 Webページでリンクに直接アクセスすると、検証コードを入力することがわかります。
解決策:単一のリンクのみに影響し、他のリンクを正常に転送できます。個々の問題リンクを手動で転送できます。すべてのリンクがこのエラーを報告している場合、「最初のリンクのみが正常に転送される」という問題の解決策を参照してください。
1,000個のリンクを連続して転送し、もう1つのリンクがエラーを報告する場合、エラーコードは非常に奇妙になります。 Webページでさえも転送できず、「データエラー、後でもう一度やり直してください」とプロンプトしてください。
理由:Baidu NetDiskはIPアドレスの封鎖に基づいており、ユーザーが大量のストレージを転送することを禁止しています。
解決策:ダイヤルルーターを再起動し、外部IPアドレスを交換できます。プロキシサーバーを使用する必要がある場合は、「システムプロキシを使用」を確認してください。
理由:一般的に、フォルダー転送には一般的です。無料のユーザーはBaiduによって制限されています。フォルダー内のファイルの数が500を超えると、「転送されるファイルの数が制限を超える」とプロンプトします。
解決策:当面はそれをサポートするつもりはありませんが、効率が低すぎます。必要な場合は、他のオープンソースまたは無料プロジェクトを残すことができます。制限を解除するために、Baidu NetDiskメンバーシップを開くことをお勧めします。
リリースグループファイルはサポートされていません。トランスファーを手動で操作するか、特別なツールを使用することをお勧めします。
Win 10以下のオペレーティングシステムの場合、ランタイムは必要なdllファイルが欠落していることをプロンプトします。
原因:オペレーティングシステムは古すぎてPython 3.10をサポートできません。
解決策:オペレーティングシステムをアップグレードします。または、バージョン2.4.0を使用します。または、パッケージ化する「セルフパッケージ」メソッドを参照してください。
転送が成功したとしても、プロンプトは「転送に失敗し、ディレクトリに同じ名前のファイルまたはフォルダーがあります。
理由:トリガーメカニズムは不明です。手がかりを提供してください。
解決策:Webページで誤った報告であるか、同じ名前のファイルがあるが、実際には別のファイルがあるかどうかを確認するのが最善です。状況に応じてストレージを手動で転送するか、「安全な転送」機能を確認します。
更新ログが長すぎることを避けるために、最新の更新ログのみが保持されます。
固定コンテンツ:
更新されたコンテンツ:
更新されたコンテンツ:
更新されたコンテンツ:
ttkbootstrapを使用して、インターフェイスを美化します。更新されたコンテンツ:
更新されたコンテンツ:
固定コンテンツ:
python 3.6にダウングレードするために、 Win7システムも使用できます。固定コンテンツ:
固定コンテンツ: