GASでWebサイトの画像を取得し、ドライブのフォルダに保存したい。
スプレッドシートのA1列にURLを入れています。
https://pelulu.jp/collection/73351
発生している問題・エラーメッセージ
GoogleドキュメントでWebサイトの内容が取得されている。
ドキュメント上に画像も表示はされているが、jpg、pngなど、画像だけを取得したい。
数多くのサイトを日々名前をつけて保存が大変なので、画像だけをフォルダに入れたいです。
なぜこうなってしまうのか解決できません。
有識者の方、ご教示いただきたくお願いいたします。
該当のソースコード
GAS
1 2//A列に入力された画像URLの画像をダウンロード 3function downloadImages() { 4 5 // 今開いているシートの取得 6 var sheet = SpreadsheetApp.getActiveSheet(); 7 8 // A列にURL 9 range = sheet.getRange("A1:A"); 10 11 // 画像URLが入力されている最後の行数を取得 12 var row = sheet.getLastRow(); 13 for (i = 0; i < row; i++) { 14 15 // シートから1行ずつ画像URLを取得 16 var url = range.getCell(1,1).getValue(); 17 18 // 画像データ取得 19 var response = UrlFetchApp.fetch(url); 20 var image = response.getBlob(); 21 var dir = DriveApp.getFolderById("1cjBEoQRMzuCdyKcODIU794o3pyh9DcWn"); 22 dir.createFile(image); 23 24 // 画像フォルダ 25 var folders = DriveApp.getFoldersByName("画像フォルダ"); 26 while(folders.hasNext()) { 27 var folder = folders.next(); 28 if(folder.getName() == "画像フォルダ"){ 29 break; 30 } 31 } 32 33 34 } 35}
再現性があるリンクを最低一つは提示してくれないと、html指定したらサイト全部になるよね、としか言えないので。
失礼いたしました。
例えば以下のサイトのjpg画像を名前を付けて保存ではなく、自動で取得したいです。
https://pelulu.jp/collection/73351
この中から画像を拾ってきて保存したいってことですか?
はい!まさにそうです。
回答1件
あなたの回答
tips
プレビュー