项目场景:
最近项目开发过程中,我们需要获取上市企业工商数据,并且特别要求这些数据中必须包含股票代码字段。
问题描述
在搜索各类网站时,我发现主要只能获取到企业的工商基本信息,而缺少详细的股票代码等字段。而去到各个证券交易所的官方网站,虽然能够查到股票代码,但通常只能对应到公司的简称,无法直接获取到完整的工商数据。
解决方案:
最后找到一个网站https://www.152127.com,能满足我需要的信息,每天能免费请求
//这是他给的样例
public void companyListRequest(String minId, String maxId, String pageNext,
String province, String city, String county,
String name, String creditCode, String ticker) {
try (CloseableHttpClient httpClient = HttpClients.createDefault();) {
URIBuilder builder = new URIBuilder
("https://www.152127.com/prod-api/developer/esg/CompanyInformation/list");
//服务文档页面自动拿这个密钥,https://152127.com/doc/EsgDoc
builder.setParameter("secretKey", "这个密钥需要登录网站去服务文档页面拿");
builder.setParameter("minId", minId);
builder.setParameter("maxId", maxId);
builder.setParameter("pageNext", pageNext);
builder.setParameter("province", province);
builder.setParameter("city", city);
builder.setParameter("county", county);
builder.setParameter("name", name);
builder.setParameter("creditCode", creditCode);
builder.setParameter("ticker", ticker);
URI uri = builder.build();
HttpGet httpGet = new HttpGet(uri);
httpGet.setHeader("Content-Type", "application/json;charset=UTF-8");
HttpResponse response = httpClient.execute(httpGet);
String responseBody = EntityUtils.toString(response.getEntity());
System.out.println("ResponseBody:: " + responseBody);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
FjsCompanyRequest request = new FjsCompanyRequest();
//获取第一页
request.companyListRequest(null, null, null, null, null, null, null, null, null);
//获取下一页
request.companyListRequest("1", "100", "true", null, null, null, null, null, null);
}
//最后请求拿到的格式
{
"id": 6,
"name": "安徽全柴动力股份有限公司",
"shortNames": "安徽全柴动力股份有限公司,600218.SH,91341100704965812G,全柴动力,安徽全柴动力",
"originalName": "",
"registrationStatus": "开业",
"legalPerson": "徐玉良",
"registeredCapital": "43,559.9919万(元)",
"paidinCapital": "43,559.9919万(元)",
"registrationAt": "1998-11-24",
"ticker": "600218.SH",
"province": "安徽省",
"city": "滁州市",
"county": "全椒县",
"telNumber": "0550-5038173,0550-5038174,0550-5038369,0550-5038289,0550-5018888",
"email": "",
"creditCode": "91341100704965812G",
"taxCode": "91341100704965812G",
"registeredNo": "340000000043830",
"orgNo": "70496581-2",
"insuredCount": "2260人",
"econKind": "其他股份有限公司(上市)",
"industry": "铁路、船舶、航空航天和其他运输设备制造业",
"englishName": "Anhui Quanchai Engine Co., Ltd.",
"webSite": "www.quanchai.com.cn",
"address": "安徽省全椒县襄河镇吴敬梓路788号",
"isin": "CNE000000XW2",
"sedol": "6133171",
"bloombergCode": "600218 CH EQUITY",
"factsetCode": "600218-CN",
"isCsi300": "否",
"isCsi500": "否",
"stockExchange": "上海证券交易所",
"isHsci": "否",
"businessScope": "内燃机、农业装备、工程机械、环保机械、生物工程机械、发电机组、塑料制品、建筑材料、塑料管材、管件、塑料原辅材料及其零配件设计、开发、生产、销售、售后服务、技术服务、技术咨询;节水农业工程、管道安装、施工;自营和代理各类商品和技术的进出口业务(国家限定和禁止进出口的商品和技术除外)。(依法须批准的项目,经相关部门批准后方可开展经营活动)",
"openAt": "1998-11-24 至 无固定期限",
"issueedAt": "2023-06-09",
"companyDesc": "安徽全柴动力股份有限公司是国内专业的发动机研发与制造企业,1998年在上交所成功上市(股票代码:600218),拥有天和机械、欧波管业、锦天机械、中能元隽等多家全资或控股子公司。具有年产60万台多缸柴油发动机和5万吨塑料管材的能力。公司是国家火炬计划重点高新技术企业、国家技术创新示范企业、国家知识产权优势企业、中国内燃机行业排头兵企业、全国机械工业先进集体、制造业与互联网融合试点示范企业、中国机械工业百强、汽车零部件百强企业等,并于2020年获得安徽省政府质量奖。公司拥有国家级企业技术中心、国家博士后科研工作站、安徽省院士工作站、安徽省重点实验室、安徽省工业设计中心等,与国内外多家内燃机科研机构及院所建立了良好的合作关系,确保了公司产品技术始终紧跟全球先进水平。依靠前瞻性的产品研发与创新能力,公司系列发动机、氢燃料电池在经济性、可靠性、环保性等方面均达到国内先进水平。发动机产品广泛应用于商用汽车、农业装备、工程机械、发电机组等,产品通过了欧盟CE和美国EPA4认证。凭借良好的产品质量和完善的售后服务,产品销售和服务网络覆盖国内、东南亚、欧洲等多个国家和地区,多缸发动机累计销量超过650万台。",
"longitude": "118.28701588066",
"latitude": "32.118409832887",
"authority": "滁州市市场监督管理局",
"mainProduct": "发动机",
"accountingName": "容诚会计师事务所(特殊普通合伙)",
"lawFirm": "安徽承义律师事务所"
},