编辑
这是我使用的文档中唯一的代码。
const vision = require('@google-cloud/vision').v1;
const client = new vision.ImageAnnotatorClient();
const gcsSourceUri = `gs://${bucketName}/${fileName}`;
const gcsDestinationUri = `gs://${bucketName}/${outputPrefix}/`;
const inputConfig = {
// Supported mime_types are: 'application/pdf' and 'image/tiff'
mimeType: 'application/pdf',
gcsSource: {
uri: gcsSourceUri,
},
};
const outputConfig = {
gcsDestination: {
uri: gcsDestinationUri,
},
};
const features = [{type: 'DOCUMENT_TEXT_DETECTION'}];
const request = {
requests: [
{
inputConfig: inputConfig,
features: features,
outputConfig: outputConfig,
},
],
};
const [operation] = await client.asyncBatchAnnotateFiles(request);
const [filesResponse] = await operation.promise();
const destinationUri =
filesResponse.responses[0].outputConfig.gcsDestination.uri;
console.log('Json saved to: ' + destinationUri);
答案 0 :(得分:0)
我尝试将kafka.pdf移到我的gcs存储桶中,并运行了python示例代码,该示例代码正常运行。当您将kafka.pdf文件移至gcs存储桶时,可能出了点问题。
尝试使用他们提供的示例文件,看看它是否对您有用:“ gs://cloud-samples-data/vision/pdf_tiff/census2010.pdf”。人口普查文件也对我有用。
答案 1 :(得分:0)
对于其他有效的PDF文件,我从批处理批注服务获得了相同的响应。就我而言,这与从节点示例中复制/粘贴示例代码以将文件上传到Google云存储有关,并包括了gzip
和cacheControl
您似乎并没有包含这些值,但是经过大量的摸索,我最终发现,如果我不上传了pdf文件,那么注释服务就可以接受这些值,不是精确的复制品,但我希望它能为您带来进步:)