ocr入库
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
package com.czg.utils;
|
||||
|
||||
import cn.hutool.core.io.FileUtil;
|
||||
import cn.hutool.crypto.digest.DigestUtil;
|
||||
import cn.hutool.http.HttpRequest;
|
||||
import cn.hutool.http.HttpResponse;
|
||||
@@ -8,8 +7,6 @@ import com.alibaba.dashscope.app.Application;
|
||||
import com.alibaba.dashscope.app.ApplicationParam;
|
||||
import com.alibaba.dashscope.app.ApplicationResult;
|
||||
import com.alibaba.dashscope.app.RagOptions;
|
||||
import com.alibaba.dashscope.exception.InputRequiredException;
|
||||
import com.alibaba.dashscope.exception.NoApiKeyException;
|
||||
import com.aliyun.bailian20231229.Client;
|
||||
import com.aliyun.bailian20231229.models.ApplyFileUploadLeaseResponse;
|
||||
import com.aliyun.bailian20231229.models.ApplyFileUploadLeaseResponseBody;
|
||||
@@ -17,7 +14,7 @@ import com.czg.exception.CzgException;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -56,12 +53,12 @@ public class AliOcrUtil {
|
||||
|
||||
|
||||
|
||||
public static ApplyFileUploadLeaseResponseBody.ApplyFileUploadLeaseResponseBodyData applyFileUpload(File file) {
|
||||
String md5 = DigestUtil.md5Hex(file);
|
||||
public static ApplyFileUploadLeaseResponseBody.ApplyFileUploadLeaseResponseBodyData applyFileUpload(InputStream stream, String fileName) {
|
||||
String md5 = DigestUtil.md5Hex(stream);
|
||||
System.out.println(md5);
|
||||
com.aliyun.bailian20231229.Client client = createClient();
|
||||
com.aliyun.bailian20231229.models.ApplyFileUploadLeaseRequest applyFileUploadLeaseRequest = new com.aliyun.bailian20231229.models.ApplyFileUploadLeaseRequest()
|
||||
.setFileName(file.getName())
|
||||
.setFileName(fileName)
|
||||
.setMd5(md5)
|
||||
.setSizeInBytes("100000")
|
||||
.setCategoryType("SESSION_FILE")
|
||||
@@ -80,9 +77,9 @@ public class AliOcrUtil {
|
||||
}
|
||||
}
|
||||
|
||||
public static String uploadFile(File file) {
|
||||
public static String uploadFile(InputStream stream, String fileName) throws Exception {
|
||||
|
||||
ApplyFileUploadLeaseResponseBody.ApplyFileUploadLeaseResponseBodyData applyInfo = applyFileUpload(file);
|
||||
ApplyFileUploadLeaseResponseBody.ApplyFileUploadLeaseResponseBodyData applyInfo = applyFileUpload(stream, fileName);
|
||||
|
||||
// 获取预签名要求的所有头
|
||||
Map<String, String> headers = (Map<String, String>) applyInfo.getParam().getHeaders();
|
||||
@@ -95,7 +92,7 @@ public class AliOcrUtil {
|
||||
}
|
||||
|
||||
// 设置文件内容
|
||||
request.body(FileUtil.readBytes(file));
|
||||
request.body(stream.readAllBytes());
|
||||
|
||||
HttpResponse resp = request.execute();
|
||||
log.info(resp.body());
|
||||
@@ -103,8 +100,13 @@ public class AliOcrUtil {
|
||||
}
|
||||
|
||||
|
||||
public static void appCall(File file) {
|
||||
String id = uploadFile(file);
|
||||
public static String appCall(InputStream stream, String fileName) {
|
||||
String id = null;
|
||||
try {
|
||||
id = uploadFile(stream, fileName);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
ApplicationParam param = ApplicationParam.builder()
|
||||
.apiKey("sk-2343af4413834ad1ab43b036e3a903de")
|
||||
.appId("3493340ef5e146c487364395fbca7bf3")
|
||||
@@ -121,13 +123,16 @@ public class AliOcrUtil {
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
System.out.printf("%s\n",
|
||||
log.info("{}",
|
||||
result.getOutput().getText());
|
||||
return result.getOutput().getText();
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
static void main() throws Exception {
|
||||
appCall(new File("C:\\Users\\Administrator\\Downloads\\微信图片_20251121101326_2015_354.jpg"));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user