https://github.com/datamade/scrapers-us-municipal

Scrapers for US municipal governments.

https://github.com/datamade/scrapers-us-municipal

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.9%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Scrapers for US municipal governments.

Basic Info
  • Host: GitHub
  • Owner: datamade
  • License: mit
  • Language: Python
  • Default Branch: master
  • Homepage:
  • Size: 2.32 MB
Statistics
  • Stars: 10
  • Watchers: 2
  • Forks: 8
  • Open Issues: 13
  • Releases: 0
Created about 9 years ago · Last pushed over 3 years ago
Metadata Files
Readme License Authors

README.md

scrapers-us-municipal

Build Status

DataMade's source for municipal scrapers feeding ocd.datamade.us.

See the upstream README for instructions on local installation and development of the scrapers.

Development

Making changes to this fork

Changes should only be made to this fork if they are related to deployment, configuration or task scheduling. All changes to scraper functionality should be made upstream in opencivicdata/scrapers-us-municipal.

As such, we want changes in this repo to all be rebased off opencivicdata/scrapers-us-municipal.

First, set up your upstream branch.

bash git remote add upstream https://github.com/opencivicdata/scrapers-us-municipal.git

Then pull from origin of this fork.

bash git pull origin master

Commit your local changes, if any. Next, rebase your changes onto upstream master.

bash git pull upstream master

bash git push origin master

Scheduling

The Chicago scrapers are scheduled using the crontab in the scripts/ directory of this repository.

The LA Metro scrapers are scheduled via Airflow. The production Airflow instance is located at la-metro-dashboard.datamade.us. DataMade staff can find login credentials under the Metro support email in LastPass. The underlying code is in the datamade/la-metro-dashboard repository.

Deploying changes

This repo uses GitHub Actions for continuous integration and deployment. To trigger a production deployment, sync the master branch with the deploy branch:

bash git push origin master:deploy

Pushing to the master and deploy branches will deploy the code to the OCD server (for scrapes scheduled by cron) and create a GitHub Container Registry build tagged with the relevant branch name (for scrapes scheduled by Airflow, which are run in containers).

Logging

Handling unresolved bills

For LA Metro, we have alerting set up to notify us if pupa is not able to resolve a board report associated with an agenda item. This is an important diagnostic tool to help us track down why some board reports are not getting scraped.

Some board reports are not getting scraped because they have not been made public and will not be made public. When LA Metro tells us that they will not make a board report public, we should "ignore" that alert in Sentry. Also add a comment that you were directed by LA Metro that this board report will not be made public.

We take this approach instead of editing the scraper to ignore certain bills because it's possible that LA Metro may decide to change their mind about what to make public sometime in the future.

Owner

  • Name: datamade
  • Login: datamade
  • Kind: organization
  • Email: info@datamade.us
  • Location: Chicago, IL

We build open source technology using open data to empower journalists, researchers, governments and advocacy organizations.

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 60
  • Total pull requests: 79
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 13 days
  • Total issue authors: 4
  • Total pull request authors: 7
  • Average comments per issue: 2.62
  • Average comments per pull request: 0.73
  • Merged pull requests: 68
  • Bot issues: 4
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • fgregg (15)
  • hancush (9)
  • reginafcompton (8)
  • sentry-io[bot] (2)
Pull Request Authors
  • reginafcompton (19)
  • hancush (14)
  • fgregg (6)
  • jmithani (1)
  • jeancochrane (1)
  • lhmzhou (1)
  • kaytwo (1)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • django >=2.2,<2.3
  • django-councilmatic ==2.6.1
  • lxml *
  • pytest ==4.2.0
  • pytest-mock ==1.10.1
  • raven ==6.10
  • requests *
  • requests-mock ==1.5.2
  • sh *
.github/workflows/main.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • aws-actions/configure-aws-credentials v1 composite
  • webfactory/create-aws-codedeploy-deployment 0.2.2 composite
.github/workflows/publish_image.yml actions
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/metadata-action v3 composite
Dockerfile docker
  • python 3.6-slim-stretch build
  • ubuntu 18.04 build
docker-compose.yml docker
  • postgis/postgis latest
  • scrapers-us-municipal latest
setup.py pypi
  • pupa *
  • scraper-legistar *
tests/docker-compose.yml docker