Google Drive ជាមួយ Apps Script

យើងបានដាក់រូបភាពនៅក្នុង Google Drive ហើយយើងចង់ទាញយកជាប្រភេទទិន្ន័យដូចជា name, url និង folder ឬក៏ប្រភេទផ្សេងៗទៀត ទៅដាក់នៅក្នុង Google Sheets។ នេះជារូបភាពដែលទុកក្នុង Google Drive ដែលមាន folder ឈ្មោះថា Angkor Wat

function myFunction() {
  var gdrive = DriveApp.getFolderById('1hyKpOYIVaGiV8PiWmHzC1HP12amGfCUX')

  var file = gdrive.getFiles()
  Logger.log(file.next())
}

យើងត្រូវប្រកាសដើម្បីយក ID របស់ folder វាសិន

ប្រសិនយើងយកបាន ID folder របស់វា ហើយយើងចង់បាន file វាយើងត្រូវបំលែងទៅជា file "var file = gdrive.getFiles()"

file.next() គឺជា method សំរាប់ចាប់យក file ម្តងមួយៗ

function myFunction() {
  var gdrive = DriveApp.getFolderById('1hyKpOYIVaGiV8PiWmHzC1HP12amGfCUX')

  var file = gdrive.getFiles()
  Logger.log(file.next())
  Logger.log(file.next())
  Logger.log(file.next())
}

  • ទាញយក file ដោយប្រើ while loop
  • ប្រសិននៅក្នុង folder មួយនឹងវាមាន file ច្រើនយើងត្រូវប្រើ while loop ដើម្បីទាញយក file ជា collection

    function myFunction() {
      var gdrive = DriveApp.getFolderById('1hyKpOYIVaGiV8PiWmHzC1HP12amGfCUX')
    
      var file = gdrive.getFiles()
      while(file.hasNext()){
        var fileName = file.next()
        Logger.log(fileName)
    
      }
      
    }
    

    file.hasNext() គឺជា method ដែលតំលៃរបស់វាគឺ boolean។ វាចាប់តំលៃមួយទៅមួយរហូតដល់អស់ ឬដល់តំលៃរបសវា true ទើបវាឈប់។

    file.next() វាចាប់តំលៃរហូត ដល់តែ file.hasNext() បញ្ឈប់ទើបវាឈប់នៅក្នុង while loop។

  • យើងទាញយក name និង url របស់វា
  • function myFunction() {
      var gdrive = DriveApp.getFolderById('1hyKpOYIVaGiV8PiWmHzC1HP12amGfCUX')
    
      var file = gdrive.getFiles()
      while(file.hasNext()){
        var fileName = file.next()
        var url = fileName.getUrl()
    
        Logger.log(fileName)
        Logger.log(url)
      }
    }
    

  • យើងទាញយក name នៃ folder
  • getFolder ឬ ទាញយក name នៃ folder មកប្រើប្រាស់

    function myFunction() {
      var gdrive = DriveApp.getFolderById('1q9NelGo2SVVKjNxXHwXFGKnoGoVaCgOw')
    
     var fd = gdrive.getFolders()
     var fdName = fd.next()
      Logger.log(fdName)
      
    }
    

  • យើងទាញយក name នៃ folder ដោយ while loop
  • function myFunction() {
      var gdrive = DriveApp.getFolderById('1q9NelGo2SVVKjNxXHwXFGKnoGoVaCgOw')
    
     var fd = gdrive.getFolders()
    while(fd.hasNext()){
     var fdName = fd.next()
      Logger.log(fdName)
      }
    }
    

  • យើងទាញយក name នៃ folder ដោយមាន folder នៅក្នុង folder រឺ folder ច្រើន
  • ដូចរូបភាពខាងក្រោម ដែល folder province ហើយនៅក្នុងមាន ៣ folder គឺ Kam Pot, Kep និង Presh Sihanok folder ហើយនៅក្នុង folder នីមួយមាន file នៅក្នុងនឹងដែរ

    function myFunction() {
      var gdrive = DriveApp.getFolderById('1MvmRlx_PBlf2F1PZkyajUlQNRMgoGV0X')
    
     var fd = gdrive.getFolders()
    while(fd.hasNext()){
     var fdName = fd.next()
      Logger.log(fdName)
      }
    }
    

    folder នីមួយៗ

    function myFunction() {
      var gdrive = DriveApp.getFolderById('1MvmRlx_PBlf2F1PZkyajUlQNRMgoGV0X')
    
     var fd = gdrive.getFolders()
    while(fd.hasNext()){
     var fdName = fd.next()
      Logger.log(fdName)
    
      var subFd = fdName.getFolders()
       while(subFd.hasNext()){
         var sFdName = subFd.next()
         Logger.log(sFdName)
       } 
      }
    }
    

    folder នីមួយៗ ហើយមាន file

    function myFunction() {
      var gdrive = DriveApp.getFolderById('1MvmRlx_PBlf2F1PZkyajUlQNRMgoGV0X')
    
     var fd = gdrive.getFolders()
    while(fd.hasNext()){
     var fdName = fd.next()
      Logger.log(fdName)
    
      var subFd = fdName.getFolders()
       while(subFd.hasNext()){
         var sFdName = subFd.next()
         Logger.log(sFdName)
    
         var fileName = sFdName.getFiles()
         while(fileName.hasNext()){
           var fn = fileName.next()
           Logger.log(fn)
         }
       } 
      }
    }
    

    Post a Comment

    0 Comments