如何使用 Google 应用程序脚本在 Google 表格中导入带有 xml 响应的 txt 文件?

塞尔吉奥·萨

我有一个 log.txt 文件,其中包含具有以下结构的记录:

20190509 131952 CON  Parametros: [abc....]
20190509 131952 CON  Changing Endpoint to https:.....
20190509 131952 INF  SQL: select .....
20190509 131952 CON  Outbound with header: 
<S:Envelope xmlns:S="http://schemas.........</S:Envelope>

我只是想提取带有 xml 响应的行,<S:Envelope xmlns:S="http://schemas.........</S:Envelope>然后将相应列中的数据导入到 google 表格中。

我不是应用程序脚本方面的专家,我看不到如何使用 XmlService 来获得结果。我认为理想的做法是导入文件,如果将其导入 Google 表格,则验证每一行是否是 xml 响应。谢谢你,如果有人能给我一些关于如何获得我想要的东西的指导。我进行了研究,但找不到任何此类示例。

function Importa() {
  var PastaAMonitorizar = DriveApp.getFolderById('abc_xyz'); // id da pasta onde txt está quardado
  var ss = SpreadsheetApp.openById('abc_xyz'); //id da folha para onde são importados os dados
  var files = PastaAMonitorizar.getFiles();

  while (files.hasNext()) {
    var file = files.next();
    var fileName = file.getName();

    var targetRng = ss.getSheetByName("INFO"),
        fileTextObj = file.getAs('text/plain'),
        fileText = fileTextObj.getDataAsString('ISO-8859-1'),
        lines = fileText.split('\n'),
...

我知道导入一个 txt 文件,但我不知道如何只提取 xml 响应

超人

从 log.txt 中提取所需的数据

您需要提供文件 ID。

这是我的文件网址: https://anyfile-notepad.semaan.ca/app#edit/GoogleDrive/1KTusR1iiQQHB1lXQfYDh2MEjDHEOsdNm

id 是最后一个正斜杠之后的字符串。

function extractData() {
  var file=DriveApp.getFileById('fileId');
  var content=file.getBlob().getDataAsString();
  var a1=content.split('\n');
  var a2=a1.filter(function(elem){return (elem.slice(0,1)=='<')});
  return a2;//and array of your desired strings
}

数组过滤器

数组切片

这将在一个简单的对话框中显示您的结果:

function extractData() {
  var file=DriveApp.getFileById('fileId');
  var content=file.getBlob().getDataAsString();
  var a1=content.split('\n');
  var a2=a1.filter(function(elem){return (elem.slice(0,1)=='<')});
  var html='';
  for(var i=0;i<a2.length;i++) {
    html+='<br />' + a2[i].replace(/[\u00A0-\u9999<>\&]/gim, function(j) {return '&#'+j.charCodeAt(0)+';';})
  }
  var userInterface=HtmlService.createHtmlOutput(html);
  SpreadsheetApp.getUi().showModelessDialog(userInterface, 'Desired Strings')
}

此代码:replace(/[\u00A0-\u9999<>\&]/gim, function(i) {return '&#'+i.charCodeAt(0)+';';})由@Chris Baker 提供。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从应用程序脚本使用 Google 表格查询或 Google 可视化 api?

来自分类Dev

无法在Google云端硬盘中使用Drivenotepad应用程序打开txt文件

来自分类Dev

使用应用程序脚本将文件下载到Google Drive文件夹

来自分类Dev

无法使用Google Apps脚本解析SOAP XML响应

来自分类Dev

使用应用程序脚本通过电子邮件从Google表格发送表格-单击按钮

来自分类Dev

如何在 Google 表格的应用程序脚本中引用行而不是列?

来自分类Dev

使用应用程序脚本在新的Google表格中插入超链接

来自分类Dev

Google 应用程序脚本 如何将多个文件移动到一个文件夹中?

来自分类Dev

控制Google云端硬盘中的文件上传位置(应用程序脚本未填写表格)

来自分类Dev

如何从XML导入Google表格中的所有元素节点

来自分类Dev

如何从Google App Engine下载应用程序源文件

来自分类Dev

Google Apps脚本:从.txt文件读取文本

来自分类Dev

如何导入XML表Google表格

来自分类Dev

如何从Google云端硬盘读取txt文件?

来自分类Dev

Google表格网页脚本:如何设置响应码

来自分类Dev

如何使用Android Studio中创建的应用程序将文件上传到Google Cloud Storage?

来自分类Dev

如何确定Google Collab中的库版本以确定应用程序的requirements.txt?

来自分类Dev

Google应用脚本-如何创建具有多张表格的Excel文件并附加到MailApp?

来自分类Dev

如何使用应用程序脚本在Google日历中隐藏来宾列表

来自分类Dev

如何使用应用程序脚本更改/更新Google表单中的问题(项目)验证

来自分类常见问题

控制Google云端硬盘中的文件上传位置(应用程序脚本未显示)

来自分类Dev

Google Apps Script - 将应用程序脚本函数的输出返回到 html 文件 javascript 函数

来自分类Dev

即使从Google Cloud Messaging中的设备卸载了应用程序,也没有收到Google的“ NotRegistered”响应

来自分类Dev

是否可以授予 JavaScript 应用程序对 Google 表格文件的 r/w 权限,而无需应用程序用户登录/拥有 Google 帐户?

来自分类Dev

我可以在Google表格中创建一个函数并从网络应用程序Google Apps脚本中使用它吗?

来自分类Dev

Google Apps脚本可作为Web应用程序使用,但不能作为电子表格脚本使用

来自分类Dev

更改Google电子表格的所有者以使用应用程序脚本发送电子邮件

来自分类Dev

部署网络应用程序时如何在Google应用程序脚本中创建警报消息?

来自分类Dev

如何等待所有用户通过Google脚本以编程方式响应Google表单?

Related 相关文章

  1. 1

    如何从应用程序脚本使用 Google 表格查询或 Google 可视化 api?

  2. 2

    无法在Google云端硬盘中使用Drivenotepad应用程序打开txt文件

  3. 3

    使用应用程序脚本将文件下载到Google Drive文件夹

  4. 4

    无法使用Google Apps脚本解析SOAP XML响应

  5. 5

    使用应用程序脚本通过电子邮件从Google表格发送表格-单击按钮

  6. 6

    如何在 Google 表格的应用程序脚本中引用行而不是列?

  7. 7

    使用应用程序脚本在新的Google表格中插入超链接

  8. 8

    Google 应用程序脚本 如何将多个文件移动到一个文件夹中?

  9. 9

    控制Google云端硬盘中的文件上传位置(应用程序脚本未填写表格)

  10. 10

    如何从XML导入Google表格中的所有元素节点

  11. 11

    如何从Google App Engine下载应用程序源文件

  12. 12

    Google Apps脚本:从.txt文件读取文本

  13. 13

    如何导入XML表Google表格

  14. 14

    如何从Google云端硬盘读取txt文件?

  15. 15

    Google表格网页脚本:如何设置响应码

  16. 16

    如何使用Android Studio中创建的应用程序将文件上传到Google Cloud Storage?

  17. 17

    如何确定Google Collab中的库版本以确定应用程序的requirements.txt?

  18. 18

    Google应用脚本-如何创建具有多张表格的Excel文件并附加到MailApp?

  19. 19

    如何使用应用程序脚本在Google日历中隐藏来宾列表

  20. 20

    如何使用应用程序脚本更改/更新Google表单中的问题(项目)验证

  21. 21

    控制Google云端硬盘中的文件上传位置(应用程序脚本未显示)

  22. 22

    Google Apps Script - 将应用程序脚本函数的输出返回到 html 文件 javascript 函数

  23. 23

    即使从Google Cloud Messaging中的设备卸载了应用程序,也没有收到Google的“ NotRegistered”响应

  24. 24

    是否可以授予 JavaScript 应用程序对 Google 表格文件的 r/w 权限,而无需应用程序用户登录/拥有 Google 帐户?

  25. 25

    我可以在Google表格中创建一个函数并从网络应用程序Google Apps脚本中使用它吗?

  26. 26

    Google Apps脚本可作为Web应用程序使用,但不能作为电子表格脚本使用

  27. 27

    更改Google电子表格的所有者以使用应用程序脚本发送电子邮件

  28. 28

    部署网络应用程序时如何在Google应用程序脚本中创建警报消息?

  29. 29

    如何等待所有用户通过Google脚本以编程方式响应Google表单?

热门标签

归档