【问题标题】:how can i get csv in google appsscript?我怎样才能在谷歌应用程序脚本中获取 csv?
【发布时间】:2022-12-07 10:21:25
【问题描述】:
function myFunction() {
  var gen_otp_url = 'http://data.krx.co.kr/comm/fileDn/GenerateOTP/generate.cmd'

  // #otp payload
  var gen_otp_data  = {'locale' : 'ko_KR',
  'mktId' : 'STK',
  'trdDd' : '20221205',
  'money' : '1',
  'csvxls_isNo' : 'false',
  'name' : 'fileDown',
  'url' : 'dbms/MDC/STAT/standard/MDCSTAT03901'};
  var options = {
      'method' : 'post',
      'contentType': 'application/json',
      'payload' : gen_otp_data};
  var otp = UrlFetchApp.fetch(gen_otp_url, options);
  Logger.log(otp.getContentText())

  var csv_url = 'http://data.krx.co.kr/comm/fileDn/download_csv/download.cmd'
  var gen_csv_data = {'code' : otp };
  var csv_options = {
      'method' : 'post',
      'contentType': 'application/json',
      'muteHttpExceptions': true,
      'payload' : gen_csv_data};
  var csv = UrlFetchApp.fetch(csv_url, csv_options);

  Logger.log(csv.getContentText());

}

我想用这个加载 csv 日志..

Logger.log(csv.getContentText());

当我在 Python 上做同样的代码时,它是一个字节码,所以我解码了它,但它在 appsscript 上不起作用......

我试过了。它不起作用...

function to64(arr) {
  var bytes = [];
  for (var i = 0; i < arr.length; i++) 
    bytes.push(arr[i]<128?arr[i]:arr[i]-256);
  return Utilities.base64EncodeWebSafe(bytes)
} // to64

【问题讨论】:

  • 你能提供Logger.log(csv.getContentText());的样本值吗?
  • csv.getContentText() 什么都没有..
  • csv.getAllHeaders() 方法
  • {Expires=Tue, 06 Dec 2022 12:22:52 GMT, Connection=keep-alive, Content-Type=application/octet-stream;charset=UTF-8, Cache-Control=max-age=0, no-cache , 无存储, 内容传输编码=二进制, 内容长度=0, mod_time=1670329372000, Set-Cookie=JSESSIONID=UbTHpDMYJ1t2CAipdec4YkTQEYDUus7VeruNFzVThwsEphRgbkz9J64mCaRN2ICP.bWRjX2RvbWFpbi9tMixGNvd2F;域名=.krx.co.kr;路径=/; HttpOnly,日期 = 星期二,2022 年 12 月 6 日 12:22:52 GMT,Content-Disposition=attachment; filename=data_2252_20221206.csv, Pragma=no-cache}
  • 谢谢你的回复。来自csv.getContentText() have notthing,在这种情况下,数据不包括在内。因此,首先,我认为需要检索数据。例如,您能否提供您要使用的 API 的详细规范?

标签: csv google-apps-script urlfetch


【解决方案1】:

我想得到这个.. AqADUIYgYA1S7YNpohdEFcDGdj9Dk3U4+1LksLL0tDQRtSksuLS7Bnxpl86F7dAOkunw9BBwugQaSjGAcH15eTgGZqZmUYRxtFW2OJYnOsQtBgM+EFJCxYg3zco1gIgRZqIo4cIzoURnTI8+MmkJ4v/rk8yudrOQ53ef0cNipdpCT2QuimcLoNhc1Lfcxcp2zXt/wiFT3lY4zZLV84P+nFYo9mrWvGCVTr7yVbjg2wtc9glyj0xDQ2lZrfrchZWN

但我得到这个..来自 Logger.log(otp.getContentText())

AqADUIYgYA1S7YNpohdEFUP2/gB8rhRtkSnlEoAJIio=

Logger.log(Utilities.base64EncodeWebSafe(otp.getContent())) QXFBRFVJWWdZQTFTN1lOcG9oZEVGUlk5SHIzUDJBUVJKMDYvMnNmQTEvOD0=

【讨论】:

    猜你喜欢
    • 2013-11-09
    • 1970-01-01
    • 2013-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    • 1970-01-01
    相关资源
    最近更新 更多