2021-07-08 23:02:12
Re①:エクセルのURL一覧からリネームしつつダウンロード
こんなかんじ? いちおう、日本語のファイル名でも「%文字」に変換されてるファイル名でも大丈夫なはず~。 #----------------------------------------------- # chromeのリンク先(ショートカットのプロパティでリンク先をコピペ) chrome=「C:\~~~~\chrome.exe」 # URL一覧エクセルファイル ファイル=「{デスクトップ}test\URL一覧.xls」 # ダウンロードフォルダ(chromeがファイルをダウンロードするとこ) ダウンロード=「C:\Users\~ユーザー名~\Downloads\」 # 保存先フォルダ 保存先=「{デスクトップ}test\」 # エクセルファイルからデータ取得 オフでエクセル起動。 ファイルのエクセル開く。 エクセル全選択。 エクセルコピー。 データ=クリップボード取得。 データ=データをTSV取得。 エクセル終了。 # ダウンロードしてリネームするループ データを反復 URL=データ[回数-1][1] DLファイル名=ダウンロード&(URLのURLファイル名抽出して、URLデコードして、SJIS変換)。//URLデコードとSJIS変換で%文字を元に戻す。 保存ファイル名=保存先&データ[回数-1][0]&「.xls」。 //コピペとかしなくても、URLを付けて起動すれば開きます。 「{chrome} {URL}」を起動。//chromeは、確認とか無く直でダウンロードフォルダに勝手にダウンロードされるっぽい。 1秒待つ。 //ダウンロードフォルダにファイルが入ったらリネーム(移動) 10回。//回数や秒数はよきように。 もし、DLファイル名の存在=はいならば、 DLファイル名から保存ファイル名へファイル移動。 抜ける。 違えば、 1秒待つ。 保存先を起動。 終わる。 #----------------------------------------------- エクセルはまるっと二次元配列として取得しています。 例のとうり1列目がファイル名になるやつで2列目がURLのつもりですが、タイトル行は考慮してないので、適宜配列削除するとか、エクセルの選択範囲を調整するとか。 コピペやキー送信をしなくても、URLを付けて起動したらサイトは開くし、chromeの場合、ファイルは確認も無しに、すぐにダウンロードされちゃうみたいなので、ダウンロードが完了したら、良き所へ移動(と同時にリネーム)とゆう感じ。 IDとパスでの認証は通ってる前提で、考慮してませんのでよしなに。 |