Java项目对接天眼查

文章目录

  • Java项目对接天眼查
    • 天眼查接口以及token获取
      • 1、登录天眼查开放平台
      • 2、找到数据接口,找到token,调用示例
    • Java代码以及返回值
      • 1、config
      • 2、controller层
      • 3、service层
      • 4、实体类
      • 4、测试结果
    • 总结

天眼查接口以及token获取

1、登录天眼查开放平台

天眼查开放平台地址天眼查开放平台
进入之后点击有上方的登录注册,输入自己的账号密码进行登录

2、找到数据接口,找到token,调用示例

登录账号以后进入首页进入数据接口

这里面是所以的接口,因为项目需要,我这边选择搜索接口

进来后里面有接口地址,接口信息这里点击测试API进去获取我们的token如下下图。

Java代码以及返回值

1、config

package com.readao.myinfo.config;import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;@Configuration
@Data
public class TianYanChaConfig {@Value("${tianyancha.token}")private String token;@Value("${tianyancha.url}")private String url;}

2、controller层

@GetMapping("/getCorporateInformation")@ApiOperationSupport(order = 5)@ApiImplicitParams({@ApiImplicitParam(name = "current", value = "当前页", paramType = "query", dataType = "int"),@ApiImplicitParam(name = "size", value = "每页的数量", paramType = "query", dataType = "int"),@ApiImplicitParam(name = "keyWork", value = "搜索关键字(公司名称或社会统一信用代码)", paramType = "query", dataType = "String")})@ApiOperation(value = "天眼查,企业基本信息查询", notes = "传入条件")public R<IPage<TeamMiddle>> getCorporateInformation(Long current, Long size, String keyWork){IPage<TeamMiddle> teamMiddleIPage = teamMiddleService.getCorporateInformation(current, size, keyWork);return R.data(teamMiddleIPage);}

3、service层

/*** (天眼查)企业基本信息查询* @param pageNum      当前页* @param pageSize       每页多少条* @param keyWork      搜索关键字* @return*/@Overridepublic IPage<TeamMiddle> getCorporateInformation(Long pageNum, Long pageSize, String keyWork) {//  调用天眼查数据查询接口String messageByUrlToken = getMessageByUrlToken(this.getUrl(tianYanChaConfig.getUrl() + "?word=",keyWork,pageSize,pageNum));//  转换数据格式JSONObject jsonObject = JSONObject.parseObject(messageByUrlToken);// 获取数据总条数Long total = jsonObject.getJSONObject("result").getLong("total");// 获取数据信息List<TeamMiddle> teamMiddleList = (List<TeamMiddle>)jsonObject.getJSONObject("result").get("items");//   创建返回值对象IPage<TeamMiddle> teamMiddleIPage = new Page<>();// 填入返回值数据teamMiddleIPage.setCurrent(pageNum);teamMiddleIPage.setSize(pageSize);teamMiddleIPage.setTotal(total);teamMiddleIPage.setRecords(teamMiddleList);return teamMiddleIPage;}/*** 拼接URL,注意前面定义的url后面拼接的参数,因为每个接口的参数都是不同的但是企业的标准是相同的(keyWork)* @param url* @return*/public String getUrl(String url,String keyWork, Long pageSize, Long pageNum){if(ObjectUtil.isNotEmpty(keyWork)){url += keyWork;}else {//    自定义异常处理throw new ServiceException("搜索条件不能为空!!!");}if(ObjectUtil.isNotEmpty(pageSize)){url += "&pageSize=" + pageSize;}if(ObjectUtil.isNotEmpty(pageNum)){url += "&pageNum=" + pageNum;}return url;}/*** @param path 对⽅或第三⽅提供的路径* @return*/public String getMessageByUrlToken(String path){String result="";try {// 根据地址获取请求HttpGet request = new HttpGet(path);//这⾥发送get请求// 获取当前客户端对象request.setHeader("Authorization", tianYanChaConfig.getToken());CloseableHttpClient httpClient = HttpClientBuilder.create().build();// 通过请求对象获取响应对象HttpResponse response = httpClient.execute(request);// 判断⽹络连接状态码是否正常(0--200都数正常)if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {result = EntityUtils.toString(response.getEntity(),"utf-8");}} catch (Exception e) {// TODO Auto-generated catch block e.printStackTrace();e.printStackTrace();}return result;}

4、实体类

package com.xxx.xxxx.entity;import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;import java.util.Date;@Data
public class TeamMiddle {private static final long serialVersionUID = 1L;/*** 主键id*/private Long id;/*** 公司名*/private String name;/*** 统一社会信用代码*/private String creditCode;/*** 注册号*/private String regNumber;/*** 经营状态*/private String regStatus;/*** 成立日期*/private Date estiblishTime;/*** 注册资本*/private String regCapital;/*** 机构类型-1:公司;2:香港企业;3:社会组织;4:律所;5:事业单位;6:基金会;7-不存在法人、注册资本、统一社会信用代码、经营状态;8:台湾企业;9-新机构*/private Integer companyType;/*** 组织机构代码*/private String orgNumber;/*** 1-公司 2-人*/private Integer type;/*** 省份*/private String base;/*** 法人*/private String legalPersonName;/*** 匹配原因*/private String matchType;
}

4、测试结果

总结

例如:以上就是我自己的实例,有什么不足请大家提出。
注:本文基于博客java对接天眼查接口,天眼查提供案例方法过期最新案例
以及个人使用过程中遇到的问题

参考文献:https://blog.csdn.net/adminwxc/article/details/123793608

Java项目对接天眼查相关推荐

  1. java对接天眼查接口,天眼查提供案例方法过期最新案例

    java对接天眼查接口 1.先了解天眼查是用来做什么的 2.确定账号 3.登录账号,找到数据接口,找到token,调用示例 1.先了解天眼查是用来做什么的 天眼查,是中国领先的商业查询平台 ,已收录全 ...

  2. 怒江java培训班_智慧树知到答案Java项目实战(黑龙江联盟)查题公众号

    智慧树知到答案Java项目实战(黑龙江联盟)查题公众号 更多相关问题 读长沙小丽的东南亚"新马泰"旅游日记,结合地图,回答问题.(8分)(3)小丽在马来西亚观光,随处可见()A.油 ...

  3. java 模拟天眼查登陆,模拟天眼查登陆问题

    相信做爬虫的很多小伙伴一定会遇到很多滑块验证码的问题.在爬取天眼查的时候是要求需要登陆的.天眼查的滑块验证码可不可以解决呢?答案是一定可以的.今天我们就来聊聊类似天眼查这种滑块验证码的解决方案. 解决 ...

  4. JAVA项目实战开发电商项目案例(十)订单与支付模块

    文章目录 1项目架构 2项目采用技术 3订单与支付模块功能演示 4如何开发支付宝的支付模块以及订单模块 4.1首先需要编写前端页面以及JS文件 4.2其次需要编写JAVA后台接口 4.3支付模块分析 ...

  5. 云效(原RDC)如何构建一个基于Maven的Java项目

    最近在将公司的持续集成架构做一个系统的调整,调整过程中受到了RDC团队大量的帮助,所以利用国庆时间写了几篇RDC的分享,希望能让更多的人了解和用好RDC这个产品. 我会把我最近3个月的使用体会分成5个 ...

  6. Eclipse对于多个Java项目的支持并不友好!

    本文吐槽! 如果我们创建两个Java项目.一个叫StatsReader.把数据从网上下载到本地数据库里.一个叫StatsViewer.把数据从数据库里拿出来呈现给用户.这两个项目都要用同一个外部类库m ...

  7. 大型Java项目架构演进

    为什么80%的码农都做不了架构师?>>>    大型Java项目架构演进过程 1. All-In-One (所有服务在一台服务器上): 也就是所有的服务都在同一个服务器上,包括应用服 ...

  8. 使用exe4j将java项目打成exe执行程序

    最近用Java写了一个小工具,想将它达成exe执行文件,到时候直接放某个目录下,一执行就能跑啦. 用到的工具: 1.写好的项目:可以是java项目,也可以是java web项目 2.能够打jar的工具 ...

  9. 使用Maven管理Eclipse Java项目(多modules编译)

    http://www.blogjava.net/lostfire/archive/2012/03/27/58428.html 使用Maven管理Eclipse Java项目 本文可以任意转载,但请保留 ...

最新文章

  1. GO语言使用的几个注意点
  2. 全新 Hexo Material Design 主题 Mellow
  3. 解释afterPropertiesSet
  4. 如何使用MiniProfiler(附最新版MiniProfiler使用心得)
  5. 获取JavaScript变量的类型
  6. spi驱动 (2):应用与测试
  7. 与数据绑定相关的接口(转)
  8. 小新air15为啥没人买_联想小新air15怎么样?身边的人用的好像比较少?
  9. 华为鸿蒙科技创新,华为、美的合作:搭载鸿蒙系统的家电来了 三大亮点
  10. Reverse Interger
  11. 对于tf.nn.sparse_softmax_cross_entropy_with_logits(logits=y,labels=tf.argmax(y_,1))的研究
  12. 航迹推演(Odometry)
  13. TMS320F280049C 学习笔记16 比较器子系统(CMPSS)
  14. 论文的总结与展望写作技巧
  15. 开源电子书项目FBReader初探(三)
  16. HDU5855(最大权闭合图构图技巧+裸的最大流)
  17. 计算机基础及msoffice应用内容,计算机一级计算机基础及 ms office 应用考些什么 自考计算机应用基础,要考哪些内容?...
  18. 《1024伐木累》-小白篇之开发网站,三天!(结束篇)-总章节十三
  19. python绘制拟合回归散点图_matplotlib中散点图的回归线和拟合曲线
  20. Samba 服务使用的端口和协议

热门文章

  1. 上周热点回顾(8.20-8.26)
  2. indesign如何画弧线_钢笔工具怎么绘制弧线?AI钢笔工具用法全解
  3. office移动端_告别微软全家桶,手机版「三合一」的 Office 终于来了
  4. rmvb压制中高级技巧
  5. 「CG原画插画教程」初学者如何练习人体动态结构?
  6. 微信小程序复制文本方法
  7. 14个步骤让你快速学会UG!
  8. SpringBoot 国际化实现跨地区的多语言切换
  9. 2022年现场综合化维护工程师四级认证考试题目
  10. CentOS7的磁盘分区操作