コマンドプロンプトで複数のWebページからファイルを一括ダウンロードする方法

会社の支給端末でWindows PowerShellで複数のWebページからファイルを一括ダウンロードする方法を試したところ以下のエラーになりファイルがダウンロードできません。

Invoke-WebRequest : リモート サーバーに接続できません。

どうしようかと考えたところ、コマンドプロンプトでも同じことができるようなので試しました。以下の記述で対象ファイルが指定のフォルダにダウンロードできました。bitsadmin /RawReturn /TRANSFERコマンドを

4回使用( & でコマンドを繋げています。)して、pdf、js、gif、ローカルCディスクからtxtをダウンロードしています。

bitsadmin /RawReturn /TRANSFER <ジョブ名> <ダウンロード元のURL> <ダウンロード先のファイル名>

bitsadmin /RawReturn /TRANSFER download https://yajin.blog/wp-content/uploads/2020/05/LY2.0-MD-C510-instruction_JP.pdf C:\Users\taku\LY2.0-MD-C510-instruction_JP.pdf & bitsadmin /RawReturn /TRANSFER download  https://s.yimg.jp/images/top/orion/20201207/bundle_20201207.js C:\Users\taku\bundle_20201207.js & bitsadmin /RawReturn /TRANSFER download https://www.google.co.jp/logos/doodles/2020/december-holidays-days-2-30-6753651837108830.3-law.gif C:\Users\taku\Desktop\gif\december-holidays-days-2-30-6753651837108830.3-law.gif & bitsadmin /RawReturn /TRANSFER download C:\Users\taku\Desktop\test.txt C:\Users\taku\Desktop\txt\test.txt

ただ、デメリットがあり、PowerShellより記述が長くなるのと、ダウンロード時間が長くなる点です。(ストップウオッチで計測したところ約30秒位掛かりました。本当は正確に計測するため、コマンドプロントに計測コマンドを入れたかったのですがうまくいきませんでした・・・)

上記と全く同じ処理をpowershellで実行して計測(Measure-Command {コマンド処理})すると、TotalSeconds:1.6220992 (約1.62秒)で終了します。

Measure-Command {#pdfダウンロード
Invoke-WebRequest "https://yajin.blog/wp-content/uploads/2020/05/LY2.0-MD-C510-instruction_JP.pdf" -OutFile "C:\Users\yajin\LY2.0-MD-C510-instruction_JP.pdf"
#jsダウンロード
Invoke-WebRequest "https://s.yimg.jp/images/top/orion/20201207/bundle_20201207.js" -OutFile "C:\Users\yajin\bundle_20201207.js"
#gifダウンロード
Invoke-WebRequest "https://www.google.co.jp/logos/doodles/2020/december-holidays-days-2-30-6753651837108830.3-law.gif" -OutFile "C:\Users\yajin\Desktop\gif\december-holidays-days-2-30-6753651837108830.3-law.gif"
#ローカルディスクCからtest.txtをコピー
Invoke-WebRequest "C:\Users\yajin2\Desktop\test.txt" -OutFile "C:\Users\yajin\Desktop\txt\test.txt"}

コメントする

CAPTCHA