Jsoup爬虫获取公司纳税识别号
天眼查
/**
* 根据公司名称获取统一社会信用代码
*
* @author xiaofei.xian 日期:2019年3月20日 上午11:12:41
*/
public class GetTaxNumber {
/**
* @param args
*/
public static void main(String[] args) { String companyNames[] = {"深圳市九象展览科技有限公司","深证市中智兴展览工程有限公司","上海汉得信息技术股份有限公司","智奥会展(深圳)有限公司"};
Map<String,String> companyMap = new HashMap<>(companyNames.length);
Document doc = null;
for (String companyName : companyNames) {
try {
// 获取公司详情页
doc = Jsoup.connect("https://www.tianyancha.com/search?key="+companyName).validateTLSCertificates(false).get();
Elements elements = doc.getElementsByAttributeValue("tyc-event-ch", "CompanySearch.Company");
Elements links = elements.select("a[href]");
if(!links.isEmpty()) {
String subUrl = links.get(0).attr("href");
doc = Jsoup.connect(subUrl).validateTLSCertificates(false).get();
Element divElement = doc.getElementById("containerbaseInfo");
divElement = divElement.select("table").get(1);
Element tr = divElement.select("tbody").select("tr").get(3);
companyMap.put(companyName, tr.child(1).text());
}
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println(companyMap);
}
}
百度企业信用
/**
* 根据公司名称获取统一社会信用代码
*
* @author xiaofei.xian 日期:2019年3月20日 上午11:12:41
*/
public class GetTaxNumber {
public static void main(String[] args) {
String url = "https://xin.baidu.com/";
String companyNames[] = {"深圳市九象展览科技有限公司", "深圳市中智兴展览工程有限公司", "上海汉得信息技术股份有限公司", "智奥会展(深圳)有限公司"};
Map<String, String> companyMap = new HashMap<>(companyNames.length);
Document doc = null;
for (String companyName : companyNames) {
try {
doc = Jsoup.connect(url+"s?q=" + companyName).validateTLSCertificates(false).get();
Element element = doc.select("a.zx-list-item-url").get(0);
String subUrl = element.attr("href");
String pid = subUrl.substring(subUrl.indexOf("?"));
doc = Jsoup.connect(url+"detail/basicAjax" + pid).validateTLSCertificates(false).get();
Elements body = doc.select("body");
JsonParser parser = new JsonParser();
JsonObject jsonObject = parser.parse(body.text()).getAsJsonObject();
companyMap.put(jsonObject.get("data").getAsJsonObject().get("entName").getAsString(),
jsonObject.get("data").getAsJsonObject().get("regNo").getAsString());
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println(companyMap);
}
}
Jsoup爬虫获取公司纳税识别号的更多相关文章
- 【Java】Jsoup爬虫,一个简单获取京东商品信息的小Demo
简单记录 - Jsoup爬虫入门实战 数据问题?数据库获取,消息队列中获取中,都可以成为数据源,爬虫! 爬取数据:(获取请求返回的页面信息,筛选出我们想要的数据就可以了!) 我们经常需要分析HTML网 ...
- (java)Jsoup爬虫学习--获取智联招聘(老网站)的全国java职位信息,爬取10页
Jsoup爬虫学习--获取智联招聘(老网站)的全国java职位信息,爬取10页,输出 职位名称*****公司名称*****职位月薪*****工作地点*****发布日期 import java.io.I ...
- (java)Jsoup爬虫学习--获取网页所有的图片,链接和其他信息,并检查url和文本信息
Jsoup爬虫学习--获取网页所有的图片,链接和其他信息,并检查url和文本信息 此例将页面图片和url全部输出,重点不太明确,可根据自己的需要输出和截取: import org.jsoup.Jsou ...
- jsoup爬虫简书首页数据做个小Demo
代码地址如下:http://www.demodashi.com/demo/11643.html 昨天LZ去面试,遇到一个大牛,被血虐一番,发现自己基础还是很薄弱,对java一些原理掌握的还是不够稳固, ...
- Jsoup问题---获取http协议请求失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.
Jsoup问题---获取http协议请求失败 1.问题:用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不 ...
- Java 网络爬虫获取网页源代码原理及实现
Java 网络爬虫获取网页源代码原理及实现 1.网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成.传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL ...
- sap 如何获取公司间采购订单或销售订单的交货状态
在上SAP项目过程,上了SD模块的企业一般都要做一些跟公司间采购订单或销售订单的交货状态的报表,通过这些报表可以经客户的业务上提供很大的灵活性,至于如何的灵活,还是那句老话“谁用谁知道".1 ...
- 02_使用WebMagic爬虫获取CSDN推荐专家的个人博客信息
本来是想抓取博客园的博客推荐的页面的,但由于一些博客进去的页面格式都不太相同,一时不想花时间去寻找规律,发现CSDN上面的格式较为单一,就决定以CSDN推荐专家的个人博客信息作为爬虫抓取的目标. [首 ...
- 进程识别号(PID)的理解
PID(Process Identification)操作系统里指进程识别号,也就是进程标识符.操作系统里每打开一个程序都会创建一个进程ID,即PID. PID(进程控制符)英文全称为Process ...
随机推荐
- 每日命令:(11)nl
nl命令在linux系统中用来计算文件中行号.nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等 ...
- python3连接mysql 稍微进阶 + 日期处理
1.踩了个操作中文的坑,结果发现之前的文章中有强调了,在连接处加:charset="utf8" conn = pymysql.connect(host = '127.0.0.1', ...
- airfoil polar data during post stall stages (high AOA)
airfoil polar data during post stall stages (high AOA) Table of Contents 1. airfoil polar during pos ...
- saltstack(六) saltstack Job管理
一,简介 Jid: job id 格式为%Y%m%d%H%M%S%f master在下发指令消息时,会附带上产生的jid,minion在接收到指令开始执行时,会在本地的cachedir(默认是/var ...
- [Codeforces 876]比赛记录
上场$rating$果然炸飞,但是据说这次只要不$FST$就能翻回来QWQ? T1 $dfs$乱搞? T2 取模乱搞,$STL$ $vector$大法好(%%%$ryf$秒出做法) T3 看了半 ...
- mongodb分片集搭建
拓扑图如下: 从图中可以看到有四个组件:mongos.config server.shard.replica set. mongos,数据库集群请求的入口,所有的请求都通过mongos进行协调,不需要 ...
- Ubuntu查看系统版本的方法
1. less /etc/issue 2. less /proc/version 3. uname -a 4. lsb_release -a
- Node: Updating npm's bundled node gyp
Linux, Mac OS X, Solaris, etc. Unix is easy. Just run the following command. Use sudo if necessary. ...
- JavaScript解析顺序和变量作用域
JavaScript基础之变量作用域. 一. 1.全局变量:全局变量的意思就是,在代码的不论什么地方都能够訪问到.注意:未定义 直接赋值的变量拥有全局属性. 2.局部变量:局部变量的意思就是,变量的作 ...
- 设计模式之五:工厂方法模式(Factory Method)
工厂方法模式:定义了一个创建对象的接口,由子类来决定详细实例化那个对象.工厂方法模式让类的实例化转移到子类中来推断. Define an interface for creating an objec ...