wgetを使用してOnedriveからファイルをダウンロードするには? (可能であればバッチファイルとフォルダ全体も含む)
答え1
2021年4月の更新:このソリューションはONEDRIVE FOR BUSINESSでは機能しなくなったようです。
私に役立つ方法があります。OneDriveファイルを直接関連付ける方法)
Web インターフェイスでダウンロードするファイルを右クリックし、[インクルード] を選択します。
~によると「このファイルに含めるHTMLコードを生成してください」。
""
リンクであるsrcに含まれている部分をコピーしてください。これは<https://onedrive.live.com/embed?cid=6EBB03E38A53ED3E& resid=6EBB03E38A53ED3E%21116&authkey=AC4lDqtLG8LqfiA>と同じです。embed
使用。 。 。交換download
。これは次のとおりですhttps://onedrive.live.com/download?cid=6EBB03E38A53ED3E&resid=6EBB03E38A53ED3E%21116&authkey=AC4lDqtLG8LqfiA。次の構文を使用して入力します
wget
(引用符が必要です)。wget --no-check-certificate "https://onedrive.live.com/download?cid=6EBB03E38A53ED3E&resid=6EBB03E38A53ED3E%21116&authkey=AC4lDqtLG8LqfiA"
楽しんでください。
答え2
共有リンクを作成し、最後に「&download=1」を追加します。
たとえば、リンクが「https://some.host/:z:/x/personal/some_user/123456asdf?e=12345」
それから
wget "https://some.host/:z:/x/personal/some_user/123456asdf?e=12345&download=1"
答え3
Chromeを使用してください(ただし、Firefoxも機能する可能性があります)。
- オープン開発ツール
- ダウンロードボタンをクリックしてください。
- ダウンロードして今すぐキャンセル
- DevToolsで[ネットワーク]タブを開きます。 DevToolsで「Zip?authKey =」を検索して開きます(クリック)。これはPOSTリクエストです。
- 下部の「フォームデータ」の右側にある「ソースを見る」をクリックしてください。
- 建設命令は次のとおりです。
wget --post-data='<raw form data>' '<Download URL>'
または:
wget --post-data='resIds=xxx&canary=yyy&authkey=zzz' 'https://cid--foobar.users.storage.live.com/downloadfiles/V1/Zip?authKey=zzz'
これは他のホスト(別のIPアドレスを使用)でも実行できます。
答え4
完全なダウンロードが必要な場合共有フォルダを公開に設定(承認されていません!):一回の死
wgetを使用していくつかのAPI呼び出しを実行し、再帰的にファイルをダウンロードします。ボーナス:ファイルのsha1スキャンを完了してください。
共有ポイント現在もサポートされていますが、少しトリッキーです(現在のリンクに表示されているよりもドライブからより多くのファイルをインポートします)。最大の問題は、API構造がわずかに異なり、セッショントークンが1時間後に期限切れになることでしたが、この問題も解決されました。また、あまりにも多くの並列ダウンロードを開始しないように、いくつかの速度制限を設定するようです。
スクリプトはパラメータを使用して既成wget
コマンドを抽出できます-w
。
PS:Web APIについてさらに詳しく知りたい場合は、プロセスを簡単に説明します。