我们经常会碰到需要了解一家企业的网上公开信息。我们通过企业关键词在天眼查搜索,获取企业统一信用代码为例。

先看效果图,通过企业名称列表,批量抓取对应的统一信用代码。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(1)

首先我们找到天眼查的详情页链接https://www.tianyancha.com/company/公司代码,其中公司代码就是变量,我们需要替换查询的。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(2)

那如何获取公司代码呢?我们可以通过搜索公司名称来获取。

https://www.tianyancha.com/search?key=公司名称

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(3)

有了这个概念,我们基本上就可以得出如何获取的理论流程了。先通过公司名称获取到公司代码,然后通过公司代码再去获取纳税人识别号。

那我们现在开始一步一步来进行实践操作。

建立一个我们需要查询的企业名称列表,然后倒入到Power Query。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(4)

直接抓取搜索页结果,转换成二进制格式,形成一个list并展开。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(5)

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(6)

通过查找源代码,找到企业代码关键词所在的代码行。我们发现包含前缀关键词

href="https://www.tianyancha.com/company

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(7)

我们可以在展开的表中筛选包含这个关键词的行,得到如下结果。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(8)

我们看到搜索出来有好几个,这个主要是通过模糊匹配出来的,一般而言我们我们通过特定企业名来搜索的话只需要取第一个即可。所以我们可以通过删除重复项来获得第一行的值。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(9)

随后我们通过提取分隔符之间的文本来得到我们需要的企业代码。

href="https://www.tianyancha.com/company/2323793835"target='_blank'

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(10)

得到企业代码后,我们在通过类似的操作,把代码作为变量获取详细页的源码。并观察详细页源码找到我们需要关键词所在的位置。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(11)

重复之前的操作,我们可以把纳税人识别号给提取出来。先筛选所在行关键词,再通过提取分隔符之间的文本来提取我们所要的信息。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(12)

这样是不是就好了呢?很多时候我们这样确实是好了,但是会碰到一个问题,因为搜索页面出来的结果是模糊匹配,虽然搜索结果出来的第一个很大概率是我们所需要的,但是不可避免会未找到我们搜索的企业信息,那第一个匹配的就会错误。这样我们还需要通过进一步的验证

我们回到详细页的界面,从源代码中抓取企业名称,方法还是大同小异,抓取后我们和我们自己提供的企业名称列表进行一次比对,把匹配结果不正确的给筛选掉,只留下匹配结果正确的。

怎么有效快速的查询企业资源 如何批量抓取企业的公示信息(13)

最终删除其他不需要的列,并返回上载到工作表中即可得到我们最初演示的效果。

,