2016-02-28 106 views
0

我正在將JIRA中的數據導入Google文檔。其中一個字段是描述,它基本上是HTML文本。使用Google應用程序腳本將HTML表導入Google文檔

有什麼方法可以在Google Doc上「添加」這個HTML文本嗎?或者我真的不得不手動解析它並創建段落,表格等?

的HTML可能看起來如下:

<p>Hello There</p> 
<table class='confluenceTable'> 
    <tbody> 
     <tr> 
      <th class='confluenceTh'> Name </th> 
      <th class='confluenceTh'> Hours </th> 
      <th class='confluenceTh'> Cost </th> 
     </tr> 
     <tr> 
      <td class='confluenceTd'> Some Person</td> 
      <td class='confluenceTd'> 1 </td> 
      <td class='confluenceTd'> CHF 1</td> 
     </tr> 
    </tbody> 
</table> 

回答

0

我能夠在this post創建文件來自於我的評論中提到的變化風格的HTML內容:

var blob = Utilities.newBlob(content, {mimeType:"text/html"}); 
var newfile = Drive.Files.insert(resource, blob, {"convert":"true"}); 
0

謝謝爲您的提示 - 基於此,我發現了以下帖子:https://ctrlq.org/code/20102-convert-office-files-to-google-docs(加上http://scraping.pro/automaticly-converting-files-google-app-script/告訴你如何啓用Drive API)。

下面的函數工作得很好對我來說:

function convertHtmlToDocs(html) { 

    var uploadFile = JSON.parse(UrlFetchApp.fetch(
    "https://www.googleapis.com/upload/drive/v2/files? uploadType=media&convert=true", 
{ 
    method: "POST", 
    contentType: "text/html", 
    payload: Utilities.newBlob("").setDataFromString(html, "UTF-8").getBytes(), 
    headers: { 
    "Authorization" : "Bearer " + ScriptApp.getOAuthToken() 
    }, 
    muteHttpExceptions: true 
} 
).getContentText()); 

    var doc = DocumentApp.openById(uploadFile.id); 
    var body = doc.getBody().copy(); 
    DriveApp.removeFile(DriveApp.getFileById(doc.getId())); 
    return body; 
} 
+0

你再追加'body'到現有的谷歌文檔或創建一個新的? –

+0

或'html'是否被附加到doc中的'fetch' url? –

相關問題