news 2026/4/27 0:09:33

营业执照识别OCR API实战:1行代码完成企业信息自动提取(附Python/Java/PHP/JS完整示例)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
营业执照识别OCR API实战:1行代码完成企业信息自动提取(附Python/Java/PHP/JS完整示例)

导读:在企业资质管理、金融风控、商家入驻审核等场景中,营业执照信息的手动录入一直是效率瓶颈。本文将手把手教您用1行核心代码调用营业执照识别OCR API,自动提取企业名称、统一社会信用代码、法定代表人等全部关键字段,附4种主流编程语言实战代码。

一、营业执照识别API能帮你做什么?

无论是B2B平台的企业入驻审核、金融机构的KYC(了解你的客户)流程,还是供应链系统的供应商资质管理,企业信息的录入都严重依赖人工操作。传统方式费时费力又容易出错。

营业执照识别API与传统手工录入的对比如下:

对比项传统手工录入营业执照识别API
平均耗时2~3分钟/单<2秒
人工成本需专人录入自动完成
数据质量易错/漏字精准结构化
批量处理困难轻松批量

支持的识别字段包括但不限于

  • 统一社会信用代码(关键字段)

  • 企业名称

  • 法定代表人

  • 注册资本

  • 成立日期与营业期限

  • 经营范围

  • 发照机关等

二、接入前的准备工作

  1. 注册账号获取API密钥:访问[公司OCR产品官网]注册账号,在API控制台获取AppKey和AppSecret(新用户一般有免费试用额度)。

  2. 了解API基本信息

    • 请求方式:POST

    • 数据格式:JSON(图片以Base64编码或URL形式提交)

    • 返回内容:结构化JSON数据

💡小贴士:如果识别出的营业执照信息不准确,可参考[《OCR 识别不准确怎么办?模糊 / 倾斜 / 反光图片优化实战》],从图片预处理角度提升识别准确率。

三、完整的代码接入示例

以下示例在核心代码行里循环所有字段输出信息;注意替换YOUR_API_KEY等参数。

以下营业执照识别OCR支持免费在线体验,API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等)

// ============================================================================== // API文档:https://market.shiliuai.com/doc/business-license-ocr // 支持免费在线体验 // API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等) // ============================================================================== //main.java import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Base64; public class Main { public static String get_base64(String path) { String b64 = ""; try { // 使用Commons IO简化文件读取 byte[] content = FileUtils.readFileToByteArray(new File(path)); // 使用JDK自带的Base64 b64 = Base64.getEncoder().encodeToString(content); } catch (IOException e) { e.printStackTrace(); } return b64; } public static void main(String[] args) { String url = "https://ocr-api.shiliuai.com/api/business_license_ocr/v1"; // 请求接口 String appcode = "你的APPCODE"; String file_path = "本地文件路径"; Map headers = new HashMap<>(); headers.put("Authorization", "APPCODE " + appcode); headers.put("Content-Type", "application/json"); // 请求体 JSONObject requestObj = new JSONObject(); requestObj.put("file_base64", get_base64(file_path)); String bodys = requestObj.toString(); try (CloseableHttpClient httpClient = HttpClients.createDefault()) { // 创建POST请求 HttpPost httpPost = new HttpPost(url); // 设置请求头 for (Map.Entry entry : headers.entrySet()) { httpPost.addHeader(entry.getKey(), entry.getValue()); } // 设置请求体 StringEntity entity = new StringEntity(bodys, "UTF-8"); httpPost.setEntity(entity); // 执行请求 HttpResponse response = httpClient.execute(httpPost); int stat = response.getStatusLine().getStatusCode(); if (stat != 200) { System.out.println("Http code: " + stat); return; } String res = EntityUtils.toString(response.getEntity()); JSONObject res_obj = JSON.parseObject(res); System.out.println(res_obj.toJSONString()); } catch (Exception e) { e.printStackTrace(); } } }


3.1 Python版本

# ============================================================================== # API文档:https://market.shiliuai.com/doc/business-license-ocr # 支持免费在线体验 # API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等) # ============================================================================== # -*- coding: utf-8 -*- import requests import base64 import json # 请求接口 URL = "https://ocr-api.shiliuai.com/api/business_license_ocr/v1" # 文件转base64 def get_base64(file_path): with open(file_path, 'rb') as f: data = f.read() b64 = base64.b64encode(data).decode('utf8') return b64 def demo(appcode, file_path): # 请求头 headers = { 'Authorization': 'APPCODE %s' % appcode, 'Content-Type': 'application/json' } # 请求体 b64 = get_base64(file_path) data = {"file_base64": b64} # 请求 response = requests.post(url=URL, headers=headers, json=data) content = json.loads(response.content) print(content) if __name__=="__main__": appcode = "你的APPCODE" file_path = "本地文件路径" demo(appcode, file_path)

3.2 Java版本

// ============================================================================== // API文档:https://market.shiliuai.com/doc/business-license-ocr // 支持免费在线体验 // API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等) // ============================================================================== //main.java import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Base64; public class Main { public static String get_base64(String path) { String b64 = ""; try { // 使用Commons IO简化文件读取 byte[] content = FileUtils.readFileToByteArray(new File(path)); // 使用JDK自带的Base64 b64 = Base64.getEncoder().encodeToString(content); } catch (IOException e) { e.printStackTrace(); } return b64; } public static void main(String[] args) { String url = "https://ocr-api.shiliuai.com/api/business_license_ocr/v1"; // 请求接口 String appcode = "你的APPCODE"; String file_path = "本地文件路径"; Map headers = new HashMap<>(); headers.put("Authorization", "APPCODE " + appcode); headers.put("Content-Type", "application/json"); // 请求体 JSONObject requestObj = new JSONObject(); requestObj.put("file_base64", get_base64(file_path)); String bodys = requestObj.toString(); try (CloseableHttpClient httpClient = HttpClients.createDefault()) { // 创建POST请求 HttpPost httpPost = new HttpPost(url); // 设置请求头 for (Map.Entry entry : headers.entrySet()) { httpPost.addHeader(entry.getKey(), entry.getValue()); } // 设置请求体 StringEntity entity = new StringEntity(bodys, "UTF-8"); httpPost.setEntity(entity); // 执行请求 HttpResponse response = httpClient.execute(httpPost); int stat = response.getStatusLine().getStatusCode(); if (stat != 200) { System.out.println("Http code: " + stat); return; } String res = EntityUtils.toString(response.getEntity()); JSONObject res_obj = JSON.parseObject(res); System.out.println(res_obj.toJSONString()); } catch (Exception e) { e.printStackTrace(); } } }

💡延伸学习:了解Java环境下的基础OCR接入流程,推荐阅读[《身份证 OCR 识别 API 接入详解(Python / Java 示例)》]。

3.3 PHP版本

// ============================================================================== // API文档:https://market.shiliuai.com/doc/business-license-ocr // 支持免费在线体验 // API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等) // ============================================================================== //文件转base64 function get_base64($path){ if($fp = fopen($path, "rb", 0)) { $binary = fread($fp, filesize($path)); // 文件读取 fclose($fp); $b64 = base64_encode($binary); // 转base64 }else{ $b64=""; printf("%s 文件不存在", $path); } return $b64; } $url = "https://ocr-api.shiliuai.com/api/business_license_ocr/v1"; $appcode = "你的appcode"; $file_path = "本地文件路径"; $method = "POST"; //请求头 $headers = array(); array_push($headers, "Authorization:APPCODE " . $appcode); array_push($headers, "Content-Type:application/json"); //请求体 $b64 = get_base64($file_path); $data = array( "file_base64" => $b64 ); $post_data = json_encode($data); //请求 $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_FAILONERROR, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HEADER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data); $result = curl_exec($curl); var_dump($result)

3.4 JavaScript(Node.js)版本

// ============================================================================== // API文档:https://market.shiliuai.com/doc/business-license-ocr // 支持免费在线体验 // API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等) // ============================================================================== // 需 Node.js 18+(内置 fetch) const fs = require('fs'); const apiUrl = 'https://ocr-api.shiliuai.com/api/business_license_ocr/v1'; const appcode = '你的APPCODE'; const filePath = '本地文件路径'; async function main() { const fileBase64 = fs.readFileSync(filePath).toString('base64'); const res = await fetch(apiUrl, { method: 'POST', headers: { Authorization: 'APPCODE ' + appcode, 'Content-Type': 'application/json' }, body: JSON.stringify({ file_base64: fileBase64 }) }); const text = await res.text(); if (!res.ok) { console.error('Http code:', res.status, text); return; } console.log(JSON.stringify(JSON.parse(text), null, 2)); } main().catch(console.error);

四、延伸应用:识别+核验完整方案

采集到营业执照信息后,一个典型的高价值延伸场景是企业四要素核验。将识别出的企业与工商官方数据库进行匹配校验,自动判断营业执照真伪和经营状态,这对金融风控、企业尽调等场景至关重要。

💡推荐阅读:接下来可以进一步参考[《订单 OCR + 自动发货系统完整实现(含架构 + 数据流 + 代码)》],了解OCR识别后如何对接业务流程实现自动化。

五、常见问题与注意事项

Q1:什么类型的图片识别效果最好?

  • 推荐使用JPG格式图片,识别率略高

  • 单张图片大小不超过5MB

  • 建议优先选择横版、清晰平整的证件扫描或照片

Q2:API可以批量处理多张图片吗?

  • 根据不同套餐和调用限制,支持高并发批量调用。具体接入方式和并发控制策略请参考官方文档。

Q3:API返回错误怎么办?

  • 常见错误包括:图片格式不支持、图片尺寸过大、无法识别出证件信息等。请确认图片为有效营业执照照片,且符合像素与拍摄角度要求。

六、总结

营业执照识别OCR API可以帮助您快速实现企业信息的自动化采集、结构化输出与合规校验。本文提供的四段示例代码,无论您使用哪种编程语言,只需1行核心代码即可轻松集成到现有系统中。

欢迎免费体验我们的营业执照识别产品:https://market.shiliuai.com/business-license-ocr

支持免费在线体验,API文档清晰,提供多种接入语言示例(如python、js、C#、java、php等),以及自动化脚本语言(如天诺、懒人精灵、按键精灵、易语言、EasyClick、触动精灵等)


如果您在使用过程中有任何问题,欢迎在评论区留言交流。我们后续还会推出更多OCR识别与图片处理系列教程,包括智能抠图、发票识别、医疗票据识别等精彩内容,欢迎关注本专栏持续学习。

标签

#营业执照识别#OCR识别#API接入#Python#Java#PHP#JavaScript#企业认证 #石榴智能 #shiliuAI

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 0:09:30

Windows Cleaner终极指南:如何彻底解决C盘爆红和系统卡顿问题

Windows Cleaner终极指南&#xff1a;如何彻底解决C盘爆红和系统卡顿问题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否曾经面对电脑右下角弹出的红色警告…

作者头像 李华
网站建设 2026/4/26 23:58:32

Rust重构终端复用器:oxideterm的设计与实现

1. 项目概述&#xff1a;一个用Rust重写的终端复用器最近在开源社区里&#xff0c;一个名为oxideterm的项目引起了我的注意。它的名字很有意思&#xff0c;oxi显然是Oxide&#xff08;氧化物&#xff09;的缩写&#xff0c;而term则指向终端。合起来&#xff0c;oxideterm直译就…

作者头像 李华
网站建设 2026/4/26 23:58:11

Python实战:XGBoost梯度提升树模型构建指南

1. XGBoost入门&#xff1a;用Python构建你的第一个梯度提升树模型如果你正在寻找一个能在机器学习竞赛中屡获佳绩的算法&#xff0c;XGBoost绝对值得你投入时间学习。作为一个从业多年的数据科学家&#xff0c;我见证了这个算法从默默无闻到成为Kaggle比赛冠军的标配工具。今天…

作者头像 李华
网站建设 2026/4/26 23:54:06

终极解决方案:5分钟学会艾尔登法环存档安全迁移

终极解决方案&#xff1a;5分钟学会艾尔登法环存档安全迁移 【免费下载链接】EldenRingSaveCopier 项目地址: https://gitcode.com/gh_mirrors/el/EldenRingSaveCopier 在《艾尔登法环》的冒险旅程中&#xff0c;你是否曾为存档丢失而痛心疾首&#xff1f;数百小时的游…

作者头像 李华