「画像」の版間の差分

提供:作業療法大百科事典OtWiki
(内容を「==画像収集== スプレッドシートを用いると、画像取得の手間を省略することができる可能性がある。」で置換)
タグ: 置換
2行目: 2行目:


スプレッドシートを用いると、画像取得の手間を省略することができる可能性がある。
スプレッドシートを用いると、画像取得の手間を省略することができる可能性がある。
Googleスプレッドシートを使用して、各行のA列にある検索キーワードに応じて、B列に画像を表示し、C列に画像URLを表示する方法を以下に示します。
スクリプトエディタを開きます。
次のスクリプトをコピーして貼り付けます。
<nowiki>function fetchImages() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2; // A列に検索キーワードが含まれている最初の行を指定
  var numRows = sheet.getLastRow() - 1; // 行の数を取得
  var dataRange = sheet.getRange(startRow, 1, numRows, 1); // A列の範囲を取得
  var keywordData = dataRange.getValues(); // A列の値を配列に取得
  for (var i = 0; i < keywordData.length; i++) {
    var keyword = keywordData[i][0];
    var searchUrl = 'https://www.google.com/search?q=' + keyword + '&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwi7sO2I1MnxAhULyDgGHQa_Cj8QsAQILA&biw=1366&bih=657';
    var response = UrlFetchApp.fetch(searchUrl); // Google画像検索のページを取得
    var html = response.getContentText(); // ページのHTMLコンテンツを取得
    var imageUrl = getFirstImageUrl(html); // HTMLから画像URLを取得
    sheet.getRange(startRow + i, 2).setValue(imageUrl); // B列に画像URLを表示
    sheet.getRange(startRow + i, 3).setValue(searchUrl); // C列に画像URLを表示
  }
}
function getFirstImageUrl(html) {
  var regex = /"ou":"([^"]+)"/; // 画像URLを取得する正規表現
  var match = regex.exec(html); // 正規表現を使用してHTMLから最初の画像URLを取得
  if (match) {
    return match[1]; // 画像URLを返す
  } else {
    return null; // 画像URLが見つからない場合はnullを返す
  }
}</nowiki>
スクリプトを保存して、スクリプトエディタを閉じます。
スプレッドシートを再度開き、A列に検索キーワードが含まれている最初の行を指定します。データが含まれる最後の行までの行の数を取得します。
ツールバーの「マクロ」をクリックし、「fetchImages」という名前のマクロを実行します。
マクロが完了すると、B列には各行の検索キーワードに対応する画像が表示され、C列には各画像のURLが表示されます。

2023年4月20日 (木) 05:22時点における版

画像収集

スプレッドシートを用いると、画像取得の手間を省略することができる可能性がある。