Skip to main content

收集美国国会的数据。

项目描述

# Hear-Ye/国会

此存储库是来自 [unitedstates/congress]( https://github.com/unitedstates/congress ) 的端口。我们需要一个美国组织没有提供的版本控制策略所以我们创建了这个存储库。这里的大多数更改仍然来自主存储库,我们在这里所做的任何更改很可能最终会通过 PR 进入主存储库。

此外,我们需要为我们的开源开发人员批量存储旧数据,因此我们决定使用 GitHub Actions 及其 cron 作业。我们每天更新我们发布的批量数据。这可以在以下位置找到:[Hear-Ye/congress-data]( https://github.com/Hear-Ye/congress-data )

## 全新安装

运行pip install congress-crawler

###注意事项!

在查看了这个存储库的大部分内容之后,很多代码只是丢失并且没有更新。在使用此端口或主存储库之前要小心。此外,我们希望本着开源和公共领域的精神保持与主存储库相同的许可证。我们坚信工具是我们社会的主要齿轮,因此这个工具尤其应该保持免费。

以下是来自 [unitedstates/congress]( https://github.com/unitedstates/congress ) 的文档(大部分是完整的,包含我们存储库中的更多功能和文档)。

## 美国/国会

收集有关法案、修正案、点名投票的数据以及有关美国国会的其他核心数据的公共域代码。

包括:

  • 来自国会的 [official bulk bill status data]( https://github.com/usgpo/bill-status ) 的数据导入脚本,是有关立法寿命和时间的官方信息来源。

  • 众议院和参议院唱名表决的刮板。

  • GovInfo.gov 的文档获取器,其中包含账单文本、账单状态和其他官方文档。

  • 用于国会总统提名的已失效的 THOMAS 刮板。

阅读github 项目 wiki中的 [文档]( https://github.com/unitedstates/congress/wiki ) 中的内容和架构。

有关此存储库如何形成的背景,请参阅 [Eric 的博客文章]( https://sunlightfoundation.com/blog/2013/08/20/a-modern-approach-to-open-data/ )。

### 配置

该项目支持 Python 3.6+。

系统依赖

在 Ubuntu 上,您需要wgetpip和一些支持包:

`bash sudo apt-get install git python3-dev libxml2-dev libxslt1-dev libz-dev python3-pip python3-venv `

在 OS X 上,您需要安装开发人员工具 ([XCode]( https://developer.apple.com/xcode/ )) 和wget

`bash brew install wget`

Python 依赖项

建议您使用virtualenv(虚拟环境)进行开发。为这个项目创建一个 virtualenv:

`bash python3 -m venv congress source congress/bin/activate` 最后,激活虚拟环境后,安装 Python 包:

`bash pip3 install -r requirements.txt`

### 收集数据

开始抓取过程的一般形式是:

./run <数据类型> [–force] [其他选项]

其中数据类型是以下之一:

要获取账单、决议和修正案的数据,请运行:

`bash ./run govinfo --bulkdata=BILLSTATUS ./run bills `

法案脚本将批量数据输出到顶级数据目录,然后按国会编号、法案类型和法案编号进行组织。将为每个账单生成两个数据输出文件:一个 JSON 版本 (data.json) 和一个 XML 版本 (data.xml)。

### 常用选项

默认情况下,调试消息是隐藏的。要包含它们,请使用 –log=info 或 –debug 运行。要隐藏甚至警告,请使用 –log=error 运行。

要收到错误邮件,请将 config.yml.example 复制到 config.yml 并填写 SMTP 选项。发生解析或执行错误时,脚本将自动使用详细信息。

–force 标志适用于所有数据类型,并禁止对网络检索资源使用缓存。

### 数据输出

该脚本会将下载的页面缓存在顶级缓存目录中,并在顶级数据目录中输出批量数据。

将为每个对象生成两个批量数据输出文件:一个 JSON 版本 (data.json) 和一个 XML 版本 (data.xml)。XML 版本试图保持与 [GovTrack.us]( https://www.govtrack.us ) 多年来提供的 XML 批量数据的向后兼容性。添加 –govtrack 标志以使用 GovTrack ID 获得完全向后兼容的输出(否则使用用于立法者的源 ID)。

有关输出格式的文档,请参阅 [项目 wiki]( https://github.com/unitedstates/congress/wiki )。

### 贡献

带有补丁的拉取请求很棒。强烈鼓励进行单元测试([示例测试](https://github.com/unitedstates/congress/blob/master/test/test_bill_actions.py))。

提交错误的最佳方式是 [open a ticket]( https://github.com/unitedstates/congress/issues )。

### 运行测试

要运行此项目的单元测试:

`bash ./test/run`

### 谁在使用这些数据

[Sunlight Foundation]( https://sunlightfoundation.com ) 和 [GovTrack.us]( https://www.govtrack.us ) 是该项目的两个主要维护者。

Sunlight 和 GovTrack 都运行 API,您可以在其中获取通过 HTTP 传递的大部分数据:

## 公共区域

这个项目是[专用于公共领域](许可证)。正如 [CONTRIBUTING](CONTRIBUTING.md) 中所述:

> 该项目在美国境内属于公有领域,通过【CC0 1.0 通用公有领域奉献】(https://creativecommons.org/publicdomain/zero/1.0/)放弃在全球范围内作品的版权和相关权.

> 对该项目的所有贡献都将在 CC0 奉献下发布。通过提交拉取请求,您同意遵守此放弃版权利益。

[![构建状态]( https://travis-ci.org/unitedstates/congress.svg?branch=master)]( https://travis-ci.org/unitedstates/congress )

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

congress-crawler-0.0.2.tar.gz (97.5 kB 查看哈希)

已上传 source

内置分布

congress_crawler-0.0.2-py3-none-any.whl (96.7 kB 查看哈希)

已上传 py3