Cách lấy link Google Sheet

Google drive có thể lưu trữ các file của bạn và bạn có thể chia sẻ cho nhiều người, tuy nhiên có những khi bạn cần list tất cả các file, đường link dẫn đến các file để lưu trữ hoặc chia sẻ cho mọi người đường link đó, hoặc là trong quá trình tạo các đường liên kết chia sẻ các file bạn sẽ phải tạo đường link đến các file, nếu làm trên từng file một thì sẽ mất rất nhiều thời gian khi bạn xử lý rất nhiều file trong google drive. Tuy nhiên với Google drive bạn có thể lấy tất cả các đường link trong thưc mục của Google drive bằng Googlesheet kết hợp với Apps Script để lấy tất cả thông tin về file, đường dẫn liên kết đến các file và các thông tin khác như sau.

Lấy đường link hàng loạt trong thư mục google drive chỉ với một lần nhấp trên googlesheet

Với cách này bạn có thể lấy hàng loạt đường links chia sẻ các dạng file trong thư mục của Google drive bao gồm các bảng tính, tài liệu, âm thanh, hình ảnh, nén….

Ví dụ bạn có một thư mục như sau và bạn sẽ muốn lấy đường link và thông tin của tất cả các file trong thư mục chỉ với một lần nhấp ở thư mục “huong dan exel”.

Đầu tiên bạn bấm với mới và tạo một file googlesheet để lưu thông tin các đường dẫn cần lấy đường link chia sẻ ngay tại thư mục này hoặc các thư mục khác bất kỳ tùy ý của bạn trong googledrive. Tìm hiểu cách tạo file Googlesheet tại đây.

Hướng dẫn tạo một Googlesheet để xử lý số liệu trực tuyến tương tự Exel

Sau khi tạo xong file googlesheet bạn có thể đặt tên file bất kỳ, ở đây tôi chọn đặt tên file là “lấy đường link file trong thư mục google drive”

Sau đó bạn chọn vào Tiện ích mở rộng và sau đó chọn Apps Script

Lúc này cửa sổ tab trình duyệt mới Apps Script sẽ hiện ra, bạn có thể đặt tên cho dự án Apps Script của mình bằng cách đổi tên ở dự án không tiêu đề. Ở đây tôi sẽ đổi tên thành lấy link trong google drive

Tại phần Function, bạn xóa hết dòng này và copy thay thế bằng các dòng lệnh sau để chạy lệnh lấy thông tin file và đường link tất cả các file trong thư mục được chọn của google drive lên googlesheet vừa được tạo. Lưu ý dòng FolderID in đậm này sau này bạn sẽ đổi bằng ID folder của thư mục cần lấy đường link các file trong googlesheet.

function laydanhsachfilevathumuc[] {
  var folderid = 'Folder ID'; // www.anhbanhang.com Doi ten folder ID
  var sh = SpreadsheetApp.getActiveSheet[];
  sh.clear[];
  sh.appendRow[["parent","folder", "name", "update", "size", "URL", "ID", "description", "type"]];
  try {
    var parentFolder =DriveApp.getFolderById[folderid];
    listFiles[parentFolder,parentFolder.getName[]]
    listSubFolders[parentFolder,parentFolder.getName[]];
  } catch [e] {
    Logger.log[e.toString[]];
  }
}

function listSubFolders[parentFolder,parent] {
  var childFolders = parentFolder.getFolders[];
  while [childFolders.hasNext[]] {
    var childFolder = childFolders.next[];
    Logger.log["Fold : " + childFolder.getName[]];
    listFiles[childFolder,parent]
    listSubFolders[childFolder,parent + "|" + childFolder.getName[]];
  }
}

function listFiles[fold,parent]{
  var sh = SpreadsheetApp.getActiveSheet[];
  var data = [];
  var files = fold.getFiles[];
  while [files.hasNext[]] {
    var file = files.next[];
    data = [ 
      parent,
      fold.getName[],
      file.getName[],
      file.getLastUpdated[],
      file.getSize[],
      file.getUrl[],
      file.getId[],
      file.getDescription[],
      file.getMimeType[]
      ];
    sh.appendRow[data];
  }
}

Sau khi copy vào thì bạn tiến hành lưu lại file dự án của bạn trong Apps Script như sau.

Cách lấy link chia sẻ hàng loạt các file trong thư mục của Google drive vào một file googlesheet 11

Bây giờ bạn sẽ vào thư mục trong google driver cần lấy đường link hay thông tin các file hàng loạt để đưa danh sách vào googlesheet vừa tạo nhằm lấy FOLDER ID của thư mục.

Thông thường đường dẫn vào thư mục sẽ có dạng sau:

//drive.google.com/drive/folders/1uZoqpXXXXXXXXXXioKY1

1uZoqpXXXXXXXXXXioKY1 Dòng bôi đỏ này chính là Folder ID của thư mục. Bạn thay thế ID của Folder vào vị trí cần thay thể Folder ID cần lấy thông tin. Sau khi đã copy Folder ID xong thì bấm vào chạy để tự động lấy danh sách các file và đường link trong folder đó.

Cách lấy link chia sẻ hàng loạt các file trong thư mục của Google drive vào một file googlesheet 12

Sau khi bạn bấm chạy dự án Apps Script thì dự án sẽ yêu cầu file Googlesheet với dự án này được cấp quyền truy cập vào google drive của bạn để lấy thông tin.

Bạn chọn xem lại quyền để cấp quyền cho dự án.

Bạn chọn tài khoản Google cần cấp quyền hoặc đăng nhập vào tài khoản chứa thư mục cần lấy thông tin. sau khi đăng nhập sẽ vào phần sau chọn nâng cao.

Và sau đó sẽ mở rộng cài đặt nâng cao bạn tích chọn vào đây: Đi tới Untitled project [không an toàn]

Về phần này bạn yên tâm vì đây là cơ chế bảo mật và miễn trừ trách nhiệm của Google vì ở đây là bạn đang cấp quyền cho một ứng dụng được truy cập vào tài khoản Google của bạn và cụ thể là Google drive. Tuy nhiên ứng dụng này được bạn tạo ra thông qua Apps Script là ứng dụng trên nền tảng của Google nên bạn có thể yên tâm. 

Sau đó bạn sẽ cấp quyền cho ứng dụng với quyền truy cập google drive và quyền chỉnh sửa Googlesheet để tự động lấy thông tin trong thư mục của Google drive và đưa danh sách các file một cách tự động vào Google sheet.

Sau đó bạn sẽ lại bấm nút chạy cho dự án, dự án sẽ chạy một lúc, tùy theo số lượng file của bạn trong thư mục và sẽ báo sau khi hoàn thành.

Và sau khi chạy hoàn thành bạn đã có thể lấy thông tin toàn bộ các file và đường dẫn liên kết của các file trong thư mục Google drive.

Bậy giờ bạn có thể copy toàn bộ thông tin này vào một file khác và lấy thông tin của các thư mục khác bằng cách mở lại mã trong Apps Script và thay đổi ID thư mục cần lấy thông tin và bấm chạy thì sẽ có một danh sách mới các file ở googlesheet này.

Chủ Đề