分析零星云数据

arche的Python项目详细描述


拱形

pypipypi-python versiongithub构建状态codecovcode style:blackgithub commit activity

pip install arche

arche(发音为arkey)有助于使用一组定义的规则(例如:

  • 使用json模式验证
  • 覆盖范围(项、字段、分类数据,包括布尔值和枚举)
  • 副本
  • 垃圾符号
  • 两种工作的比较

我们在scrapinghub和其他工具中使用它,以确保刮取数据的质量

安装

arche需要jupyter环境,同时支持jupyterlab和笔记本ui

对于jupyterlab,您需要正确安装绘图扩展

然后只需pip install arche

为什么

连续检查刮取数据的质量。例如,如果你抓取了一个网站,一个典型的方法就是用arche验证数据。您还可以创建一个模式,然后使用json schema" rel="nofollow">spidermon设置https://github.com/scrapinghub/arche/issues

更改

最新版本显示在顶部。每个版本都显示:

  • 添加了:新的类、方法、函数等
  • 已更改:附加参数、输入或输出更改等
  • 已修复:不会更改记录的行为的错误修复

注意,最上面的版本是github上未发布的master分支中的更改。项目后面的括号显示了更改参与者的名称或github id。

保留更改日志语义版本控制

【0.3.6】(2019-07-12)

添加

更改

  • arche.report_all()默认不缩短报表,添加了short参数。
  • 数据与dash和spidermon一致:u type,_key字段从dataframe、raw data、basic schema、104、106中删除
  • df.index现在存储>键
  • basic_json_schema()已删除的作业一起工作
  • 开始支持集合112
  • 枚举被计算为类别标记,18
  • 垃圾符号搜索嵌套字段的str表示,而不是展开的df,130
  • 显示实际覆盖率差异(负/正),而不是绝对值,114

已修复

  • arch.glance(),88
  • 模式验证错误中的项链接,89
  • 类别图上的空NaN条,93
  • 数据质量报告(),95
  • 如果包含项0,112

删除

  • 每项回复比率规则
  • 已弃用expand参数并删除了flat_df,因为垃圾规则处理嵌套数据本身,133

【0.3.5】(2019-05-14)

添加

  • arche()支持任何带有项目指令的iterable,修复jsonschema一致性,83
  • items.from_array从iterables读取原始数据,83

更改

已修复

删除

【0.3.4】(2019-05-06)

已修复

  • basic_json_schema()失败,类型为long1.0types,80

【0.3.3】(2019-05-03)

添加

  • 接受数据帧作为源或目标,69

更改

  • 数据质量报告绘制的是相同的"字段覆盖率",而不是绿色的"刮除字段覆盖率"
  • 剧情主题由GGPLOT2改为Seaborn,62
  • 同一目标和源引发错误,之前是警告
  • 通过的规则标记为绿色通过。

已修复

删除

  • 已弃用arche.basic_json_schema(),请使用basic_json_schema()
  • 已将quickstart.md删除为冗余-文档保存在笔记本中

[0.3.2](2019-04-18)

添加

  • 允许直接从BitBucket读取私有原始架构,58

更改

  • 在打印图形之前删除进度小部件
  • 新Plotly V4 API

已修复

  • 失败的比较相同url的价格当url为nan时,67
  • Jupyter笔记本中的空图表,63

删除

  • 报废项目历史图表

[0.3.1](2019-04-12)

已修复

  • 由于缺少plotlyjs,61

[0.3.0](2019-04-12)

已修复

  • 大尺寸笔记本,袖扣替换为Plotly和iPython,39

更改

  • 字段覆盖率现在打印为条形图,9
  • 字段计数重命名为覆盖率差异,结果为2个条形图,9,51:
    • "作业统计信息"字段中的覆盖范围计数,它反映两个作业的每个字段的覆盖范围
    • 覆盖范围差异大于5%这将打印覆盖范围之间的5%差异(以前是比率差异)
  • 比较刮削的类别重命名为类别覆盖率差异,并为每个类别生成2个条形图,52:
    • 字段的覆盖范围反映两个作业字段的值计数(类别)覆盖范围
    • 字段的覆盖率差异大于10%,显示类别覆盖率之间的10%差异
  • 布尔字段plots布尔字段的覆盖范围反映两个作业的布尔字段的规格化值计数的图形,53

删除

  • 袖扣相关性
  • 已弃用category\u字段tag

[2019.03.25]

添加

  • changes.md
  • 新的arche.rules.duplicates.find_by()按所选列查找重复项
import arche
from arche.readers.items import JobItems
df = JobItems(0, "235801/1/15").df
arche.rules.duplicates.find_by(df, ["title", "category"]).show()
  • basic_json_schema().json()以json格式打印模式
  • result.show()打印规则结果,例如
from arche.rules.garbage_symbols import garbage_symbols
from arche.readers.items import JobItems
items = JobItems(0, "235801/1/15")
garbage_symbols(items).show()
  • 笔记本到文档

更改

  • 标记规则返回未使用的标记,2
  • basic_json_schema()将模式打印为python dict

已弃用

  • arche().basic_json_schema()已弃用,取而代之的是arche.basic_json_schema()

删除

已修复

  • arche().basic_json_schema()不使用项目号参数

2019.03.18

  • 未经更改的最新版本更新

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

推荐PyPI第三方库


热门话题
java在Hibernate中从两个具有不同功能的表(postgreSQL)映射一个实体   java jfreechart需要自定义Y轴,以便打印   Java:从外部获取类。罐子   java如何获取Appium服务器日志   具有完全相同内容的java重写函数会导致错误   java消息的类路径是什么。属性(如果在依赖项jar中)   循环/相等的java问题==   java如何使用ionic cordova angularjs将所选图像发送到spring controller以保存到服务器?   库中的java语言环境数据   java从JSON webservice检索安卓中的字节[]   调试如何从Java中的类调试方法?   java将日期字符串切割成变量   无法使用java附加到文件?