function processReceipt(imageUrl) { // var image = UrlFetchApp.fetch(imageUrl); // , var pass = "GoogleDriveTest" + ":" + "********************" // POST var url = "http://cloud.ocrsdk.com/processReceipt"; var headers = { "Content-Type":"image/png", "Authorization" : "Basic " + Utilities.base64Encode(pass) }; var options = { "method":"POST", "headers": headers, "payload" : image.getContent() }; var response = UrlFetchApp.fetch(url, options); // XML ID ( http://ocrsdk.com/documentation/apireference/processReceipt/) var document = XmlService.parse(response.getContentText()) var id = document.getRootElement().getChildren()[0].getAttribute('id').getValue() var resultUrl // url do { Utilities.sleep(3000) url = "http://cloud.ocrsdk.com/getTaskStatus" + "?taskId=" + id; headers = { "Authorization" : "Basic " + Utilities.base64Encode(pass) }; options = { "method":"GET", "headers": headers, }; response = UrlFetchApp.fetch(url, options); document = XmlService.parse(response.getContentText()); if (document.getRootElement().getChildren()[0].getAttribute('status').getValue() == 'Completed') { resultUrl = document.getRootElement().getChildren()[0].getAttribute('resultUrl').getValue() break } } while(true) // options = { "method":"GET", }; response = UrlFetchApp.fetch(resultUrl, options); document = XmlService.parse(response.getContentText()); // document XML . - findTotalPriceInReceiptXML :) result = findTotalPriceInReceiptXML(document) return result }
Source: https://habr.com/ru/post/319042/
All Articles