我有两个问题:
发送相同图片定期会弹出错误:
错误:GoogleJsonResponseException: application / octet-stream
类型的文件不支持OCR
在
function doOCR(imageUrl) {
// Fetch the image data from the web
var imageBlob = UrlFetchApp.fetch(imageUrl).getBlob();
var metadata = {
title: imageBlob.getName() || 'OCR File',
mimeType: imageBlob.getContentType() || 'image/png'
};
var options = { // OCR on .jpg, .png, .gif, or .pdf uploads
ocr: true
};
var docFile = Drive.Files.insert(metadata, imageBlob, options);
var doc = DocumentApp.openById(docFile.id);
如果我们合并:
replace("/", "") + replace("\n", "")
在其中
replace(/[\n\/]+|(\/\n)+/g, "") // not work!
代码是:
// Extract the text body of the Google Document
var text = doc.getBody().getText().replace("\n", "") //working
.toLowerCase()
.replace("/", "") //working
.replace(/((^|\.[\s\n]+)(\w))/g,
function(m, m1, m2, p) {
return m1.toUpperCase();
}); //end normalize text
return text
}
为什么?
我无法理解。
但如果你在代码中分开两者,那么一切正常。
UPD : 对不起大家。我真的犯了一个错误并添加了额外的报价。但在代码中却没有。 正则表达式本身我在谷歌脚本测试它没有用。
然后我决定在网站https://regex101.com/上尝试一下。它也不能完全不是两种组合中的一种。即换行符。在google-script中,有时会错过符号'/'或'\ n'。
我可以解决的第一个错误明确指定'mimeType:i mage / png',而不是定义文件。传输文件时,问题很可能是gzip压缩。而后续的错误解码是我的意见,可能是错误的
非常感谢发表评论的每个人。有人回答我真的很惊讶!