Skip to main content

Python client with tools for working with recreation.gov data.

Project description

pyFedCamp

This package works with data from the recreation.gov system for camping reservations on U.S. Federal lands. It makes up for a number of things not covered in "The Hub" (the system used for managing reservations and campground operations).

Placards

The seminal use case for pyFedCamp was the production of custom placards to be printed out and placed on sign posts for each campsite on the day/night of initial reservation. We found ourselves tweaking the existing placard print-out from rec.gov to make things larger so that members of staff and guests could read them at a distance. All of the data necessary to produce the placards is contained in the Camping Reservation Detail report, including the obfuscated (non-PII) customer initials, arrival/departure date, and other information.

The Reservations class handles reading the Excel file produced in the Camping Reservation Detail Report, ensuring that the file is in the expected format (more on this in the dependencies section), and builds a dataframe from the actual data part of the worksheet (minus multiple header rows). The build_placards function uses the Python ReportLab package to produce an 8.5x11 PDF with up to 4 placards per sheet, similar to the built-in rec.gov report.

Input Parameters

The following are required input parameters for the Reservations class:

  • input_file (str) - The relative or absolute path to the Camping Reservation Detail Report input file that will be processed
  • create_placards (bool) - True to run the build_placards function and generate the downloadable PDF file
  • placards_filename (str) - Defaults to 'placards.pdf'
  • fed_unit (str) - The display name for the U.S. Federal land unit that will be examined and processed
  • campground (str) - The display name for the specific campground on the Federal land unit
  • arrival_dates (list of dates) - One or more arrival dates (date objects) that must be found in the input file for placards; defaults to today's date
  • campsites (list of strings) - Optional list of campsites to filter on from the input data when only certain sites need to be printed or reported on

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfedcamp-0.0.1.tar.gz (232.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfedcamp-0.0.1-py3-none-any.whl (231.8 kB view details)

Uploaded Python 3

File details

Details for the file pyfedcamp-0.0.1.tar.gz.

File metadata

  • Download URL: pyfedcamp-0.0.1.tar.gz
  • Upload date:
  • Size: 232.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.10.9 Darwin/24.5.0

File hashes

Hashes for pyfedcamp-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ab658769b168b32ccf01d74b087b7319e48751387068deea17b50a5566c42968
MD5 097abc6b88bc69335646d2ea39dee58c
BLAKE2b-256 7a78fcbddbe5f2494fee9f1a6e5922ce37d19d3b6a0a3a61bcb5d9e7527a3d39

See more details on using hashes here.

File details

Details for the file pyfedcamp-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pyfedcamp-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 231.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.10.9 Darwin/24.5.0

File hashes

Hashes for pyfedcamp-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 72585430a92b2e982a4043199d6de6acf3ecc0025ef4d76d2226ce3417a19d1d
MD5 e3fb207d4e4d2cd516879f59c47165f0
BLAKE2b-256 50a646ef2531c878008e0677604ccd92126c0db551d2ab05ab7f849f524a5dc2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page