Asistente de reconocimiento de texto OCR

Guía de Desarrollo de Interfaces de API Abiertas

Consigue créditos API

¡Bienvenido a la Plataforma Abierta del Asistente de Reconocimiento de Texto OCR!
Ofrecemos servicios estables, de alta velocidad y de reconocimiento de tablas de extracción de texto y de reconocimiento de tablas.

1. Mecanismo Global de Autenticación (Auth)

Todas las solicitudes de interfaz deben incluir los siguientes parámetros de autenticación en la URL:

Nombre del parámetro Obligatorio Descripción
app es Valor fijo api
token es Puedes encontrarlo en Centro personal Consigue tu propio token
2. Identificar la interfaz central (op = código)

URL de solicitud: /Code.ashx?op=code&app=api&token=YOUR_TOKEN&type=0

Método de llamada: POST

Los parámetros se escriben uniformemente en la URL, y los datos de la imagen se pasan por el cuerpo POST (se soporta multiparte flujo de archivos, campo de formulario o texto plano).

2.1 Introduce la imagen para ser reconocido (elige una de tres)

Nombre del parámetro Tipo Descripción
(Documento) File Flujo estándar de archivos de subida multiparte.
url String La red pública de la imagen puede acceder a la dirección de enlace directo.
code String Cadena Base64 de la imagen (no es necesario incluir una declaración de formato en el encabezado).

2.2 Modo central y control del motor

Nombre del parámetro Obligatorio Descripción
type No Identificar patrones:
0: Reconocimiento de texto (Default)
1: Identificación vertical
2: Reconocimiento de mesa
3: Reconocimiento de fórmulas (Como MathPix)

2.3 Reglas de Formato y Diseño (Opcional)

Los siguientes parámetros pasan valores 1 Activa el procesamiento correspondiente, valor 0 No está encendido.
Si no hay una necesidad específica, se recomienda no transmitirlo y dejar que el sistema decida:

Nombre del parámetro Obligatorio Descripción
left No Biografía 1 Forzar la costura de ordenación de izquierda a derecha.
top No Biografía 1 Ordenar de arriba a abajo.
autodirection No Biografía 1 Determina automáticamente la orientación de la imagen y la rota para alinearla.
half No Biografía 1 Puntuación automática de ancho completo a media anchura normal.
space No Biografía 1 Gestiona automáticamente los espacios de palabras entre caracteres en inglés y chino, japonés y coreano.
symbol No Biografía 1 Corrige automáticamente la puntuación rara.
duplicate No Biografía 1 Elimina automáticamente los guiones.

2.4 Descripción del valor de retorno (JSON)

La interfaz de reconocimiento devuelve un formato JSON estándar. El valor es null el campo se omite automáticamente.

Campos de nivel superior

Campo Tipo Descripción
id String El ID único de lote (formato UUID) de esta solicitud puede usarse para consultar los resultados de forma asíncrona.
ocrType Int Identifica el tipo, con los parámetros de la solicitud type correspondencia.
processId Int El ID del nodo motor que gestionó la solicitud.
processName String Nombres de motores de proceso. Cuando está vacío indica que el reconocimiento expiró o no se asignó a un nodo.
state Int Códigos de estado de manejo (véase la tabla de enumeración más abajo).
message String Descripción adicional de mensaje/error, que solo se devuelve en casos excepcionales.
result Object Objetos de resultado de identificación de núcleos (véase la tabla de subcampos a continuación para más detalles).
desc String Información descriptiva adicional adjunta al motor, si la hay.

result Subobjeto – Resultado de texto

Campo Tipo Descripción
autoText String Uso recomendado。 Texto completo con fusión inteligente de párrafos y optimización del diseño.
spiltText String Texto dividido por párrafo original (entre párrafos \t Sangría + \n salto). En modo tabular, los datos son columnas JSON.
transText String Traduce el texto resultante (solo en type=Translation retornos de modo, estructura con spiltText correspondencia).
lang String El identificador de idioma de la imagen detectado automáticamente por el motor (por ejemplo, chi_sim, eng, jpn)。
resultType Int Tipo de formato del resultado.0= texto plano, 1= página web (con renderizado de fórmulas), 2= Mesa.

result Subobjeto - datos 🗺️ de posicionamiento de coordenadas

Los siguientes campos contienen la posición precisa de cada bloque de texto en la imagen original, adecuada para escenarios como resaltar superposiciones, extracción de áreas, etc.

Campo Tipo Descripción
spiltLocText String Texto segmentado original con información de coordenadas (resultado de la fusión inteligente de párrafos, incluyendo información de ubicación).
transLocText String Texto segmentado traducido con información de coordenadas.
verticalText String (JSON) ⭐ Una cadena JSON de un conjunto completo de coordenadas de bloques de texto. Uno para cada elemento TextCellInfo objeto (véase la estructura más abajo).

verticalText Estructura de objetos TextCellInfo

[
  {
    "words": "El contenido de texto que se reconoce",
    "trans": "Resultados de traducción (si los hay)",
    "pageIndex": 0,
    "location": {
      "left": 120.0,
      "top": 45.0,
      "width": 230.0,
      "height": 28.0
    }
  },
  ...
]
Campo Tipo Descripción
words String El texto se reconoce por este bloque de texto.
trans String Resultados de traducción (valorados solo en modo de traducción).
pageIndex Int Índice de número de página (válido en escenarios de documentos de varias páginas, comenzando desde 0).
location.left Double Coordenadas X (píxeles) en la esquina superior izquierda del bloque de texto.
location.top Double La coordenada Y (píxeles) en la esquina superior izquierda del bloque de texto.
location.width Double Ancho de bloque de texto (en píxeles).
location.height Double Altura del bloque de texto (en píxeles).

result Subobjeto - Descarga de archivo

Campo Tipo Descripción
viewUrl String Cuando resultType=1 (página web/fórmula), la dirección de la página de previsualización en línea devuelta.
downloadHtml String Fragmento de HTML con enlaces de descarga.
files Array Una lista de archivos de resultados disponibles para descargar, cada uno de los cuales es: DownLoadInfo objeto (véase la estructura más abajo).

files La estructura de objetos DownLoadInfo en la estructura de objetos DownLoadInfo

Campo Tipo Descripción
url String La dirección de descarga del archivo.
param String Descarga los parámetros adicionales que necesites.
fileType Int Enumeración de tipos de archivo:1=PDF, 2=Word, 3=PPT, 4=Excel, 5=TXT, 6=Markdown
desc String Descripción del documento.

state Enumeración estatal

Valor Significado Descripción
0 Pendiente La solicitud ha sido recibida y la locomotora no ha sido asignada.
2 Procesamiento exitoso Resultados de reconocimiento de retorno normalmente.
3 Fallo en el procesamiento El motor gestiona una excepción y puede ser probado de nuevo.
4 Tiempo de espera de procesamiento El motor no regresó dentro del periodo de validez.
6 Límite de concurrencia Hay demasiadas solicitudes simultáneas, así que por favor reduce la frecuencia.
7 No se admiten tipos El tipo de reconocimiento actual o formato de archivo no es compatible.

Ejemplo trasero

✅ Respuesta exitosa (con datos de coordenadas):

{
  "ocrType": 0,
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "processId": 3,
  "processName": "OCR-Node-01",
  "state": 2,
  "result": {
    "autoText": "Texto completo tras la fusión inteligente",
    "spiltText": "Texto original dividido por párrafos",
    "verticalText": "[{\"words\":\"Hola\",\"location\":{\"left\":10,\"top\":20,\"width\":80,\"height\":22}}]",
    "resultType": 0,
    "lang": "chi_sim"
  }
}

❌ Respuesta al error/límite:

{
  "ocrType": 0,
  "processName": "Consejos",
  "result": {
    "spiltText": "La cuota de API de hoy se ha agotado, por favor recárgate y sigue usándola!",
    "autoText": "La cuota de API de hoy se ha agotado, por favor recárgate y sigue usándola!"
  },
  "id": 1
}
3. Consulta de resultados asíncrona (op = idcode)

URL de solicitud: /Code.ashx?op=idcode&app=api&token=YOUR_TOKEN

Método de llamada: POST

Función: Devuelta según la interfaz de reconocimiento id Consulta los resultados del procesamiento asincrónico. Cuando la interfaz de reconocimiento regresa state=0(pendiente), puedes usar esta interfaz para encuestar y obtener el resultado final.

Nombre del parámetro Obligatorio Tipo Descripción
id es String Identifica el ID de la solicitud por lote que devuelve la interfaz y pásalo por el cuerpo POST.

Ejemplo trasero

✅ Respuesta exitosa:

[
  {
    "ocrType": 0,
    "id": "a1b2c3d4-...",
    "processName": "OCR-Node-01",
    "state": 2,
    "result": {
      "autoText": "Identifica el texto resultante",
      "spiltText": "Texto segmentado",
      "resultType": 0
    }
  }
]

❌ Respuesta fallida (ID no existe o el resultado ha expirado):

no

Devuelve texto plano no Indica que no se encontró ningún resultado para ese ID, que puede ser un ID El error o resultado ha expirado y se ha eliminado.

4. Cama de subida de imágenes (op = imgUpload)

URL de solicitud: /Code.ashx?op=imgUpload&app=api&token=YOUR_TOKEN

Método de llamada: POST (multipart/form-data)

Función: Sube una imagen a la cama de imágenes gratuita y devuelve una URL de enlace directo accesible en la red pública. Es adecuado para situaciones en las que necesitas subir primero una imagen y luego usar la URL para llamar a la interfaz de reconocimiento.

Nombre del parámetro Obligatorio Tipo Descripción
(Documento) es File Archivos de imagen subidos en varias partes.

Ejemplo trasero

✅ Respuesta exitosa:

https://cdn.example.com/uploads/abc123.jpg

❌ Respuesta fallida (archivo no subido ni excepción de subida):

no

Devuelve texto plano no Indica que el archivo no fue recibido o que se produjo una excepción durante el proceso de subida.

5. Interfaz de Consulta de Saldo (Cuota API)

URL de solicitud: /Code.aspx?op=count&app=api&token=YOUR_TOKEN

Método de llamada: GET

A través de esta interfaz, puedes ver el número de veces que se ha usado el token hoy y la cuota restante.

Ejemplo trasero

✅ Respuesta exitosa:

{
  "Account": "api",
  "TodayCount": 52, // Usado hoy"LimitCount": 9948       // El número total de restos actuales
}

❌ Respuesta al fallo (token inválido o no transmitido):

{
  "Account": "api",
  "TodayCount": 0,
  "LimitCount": 0
}

Nota: Si el token es inválido, no se reportará ningún error, pero devolverá JSON con todos los valores de 0, dependiendo de si el LimitCount es sí o no 0 para juzgar la validez del token.

💻 Encargo en línea & Código de acceso
// Espera a que envíen la solicitud...
📋 Código de acceso rápido (Sigue las opciones anteriores para generar automáticamente)
Code Snippet
Tras seleccionar la interfaz y los parámetros, se generará automáticamente...
Asistente OCR QQ atención al cliente online
Servicio de atención al cliente de QQ(365833440)
Grupo de comunicación de usuarios de asistente OCR QQ
QQGrupo(100029010)
Asistente OCR de contacto con atención al cliente por correo electrónico
Buzón:net10010@qq.com

¡Gracias por vuestros comentarios y sugerencias!