从公司内部建立网络api

chp的Python项目详细描述


chpy

英国公司house api的包装器,用python编写,使用networkx构建的网络分析工具。

注释

这个工具使用户能够从英国公司内部api的信息构建企业网络。 网络是通过以下过程构建的:

  • 用户输入一个有效的英国公司编号,以及一个api密钥和一些所需的迭代。
  • CHPY从该公司提取有关其管理人员和重要控制人员(PSC)的信息。
  • 人员/PSC与被搜索公司之间的关系将添加到边缘列表中。
  • 如果一个官员是一个有效的英国公司,它将被添加到一个公司列表中,以便在以后的迭代中进行检查。注意:在0.1.1a中,此功能不扩展到pscs。
  • 然后,chpy使用模糊匹配和出生日期/地址检查来验证搜索结果,在companies house api中搜索其他公司的每个官员/pscs约会。
  • 然后将这些关系添加到edge列表中,并将公司添加到company表中,以便在以后的迭代中进行分析。
  • 进程循环到用户指定的深度。

0.1.1中的新功能

  • 主要功能——get_company_network()——已经过全面的检查:
    • 一种新的、更清晰的数据采集结构。
    • 迭代深度。
    • 从python中输出到networkx图形和pandas数据帧。
    • 运行时输出更清晰,但是进度条功能暂时被挂起。

工作原理

alt text

用法

这个工具目前打算与jupyter笔记本一起使用,我在“example”目录中提供了一个示例。 我相信大多数用户想要做的只是从他们感兴趣的公司建立一个网络。 强烈建议将深度设置为1或2。深度是指数级的,错误也是指数级的(见下面的“警告词”)。

pip install chpy
from chpy.build import *

# You'll need your own API key from Companies House and to load
# it as a variable in Python.
with open('API_KEY.txt') as f:
    api_key = f.read().strip()

graph, edge_list, company_table = get_company_network("a valid company number", api_key, 2)

上面的代码以networkx格式返回一个图形,并以pandas数据帧的形式返回一个edge_list和company_table。

此外,chpy将三个对象输出到./data/company_number_depth/:

  • 一个CSV格式的节点列表
  • CSV格式的一个边缘列表
  • 一个GEXF格式的图形,用于GEPHY或类似的图形

一句警告的话

这在很大程度上仍在开发中,而且由于公司内部(ch)数据的维护和结构方式,使用此工具时需要一定程度的谨慎。值得注意的是:

  • ch不维护已经停业一段时间的公司的信息,因此请注意,在许多情况下,生成的数据将是不完整的。
  • 同样,不活跃的官员也不一定总是有。
  • 由于ch-api所使用的唯一标识符系统的局限性,该软件广泛使用模糊匹配来建立公司和官员之间的链接。该系统的设计是保守的关系,它建立,需要出生日期(如果可用)和位置匹配,因此可能错过关系,如果一个强大的匹配没有找到。
  • 同样,考虑到ch search api和模糊匹配的使用,尽管有上述的保护措施,在特殊情况下,“误报”仍然可能发生。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
SSLEngine中getHandShakeStatus()的握手差异和java中SSLenginResults的握手差异   java数据验证执行while循环   java使用GSON尽可能简单地解析JSON字符串   SpringJava。lang.NoClassDefFoundError:org/springframework/security/converter/RsaKeyConverters   java如何将列表<String>作为对象发送并使用ObjectInputStream读取   java从高速数据流更新映射   java从类路径获取目录(现在获取文件)   java如何减去两个字符串   为什么Java提供规范而不是实现   返回字符时出现的java问题   将MySQL数据库移动到远程服务器后php“拒绝用户访问”   对LinkedList进行java排序   JavaScript正则表达式到Java正则表达式   java JSF到JQuery组件的集成   java中图形的swing自定义方法。awt。图样   java将多个trycatch块组合成一个   java SFTP路径格式与本地路径格式