async def check_all_sites(max_pages): campground_store = DbCampgroundStore(session=get_session()) for c in campground_store.get(): logger.info('campground={}'.format(c)) store = DbAvailabilityStore(session=get_session(), park_id=c.park_id) try: await get_availability(show_ui=False, n=max_pages, store=store) except KeyboardInterrupt as e: logger.info('break detected... exit') break except Exception as e: logger.error('failed with {}; moving on...'.format(e))
def main(park_id, show_ui, max_pages, logging_config, write_to_console): config_logging(logging_config) store = ConsoleAvailabilityStore( ) if write_to_console else DbAvailabilityStore(session=get_session(), park_id=park_id) asyncio.get_event_loop().run_until_complete( get_availability(show_ui, max_pages, store))
def populate_campgrounds_cli(state, show_ui, max_pages): session = get_session() store = DbCampgroundStore(session=session) campgrounds = campground.search_state(state_code=state, show_ui=show_ui, max_pages=max_pages) store.put(campgrounds)
def status_cli(): session = get_session() n_campgrounds = session.query(Campground).count() n_sites = session.query(Site).count() n_records = session.query(RawAvailable).count() print(''' {:12,.0f} campgrounds {:12,.0f} sites {:12,.0f} records '''.format(n_campgrounds, n_sites, n_records))
def index(): session = get_session() n_campgrounds = session.query(Campground).count() n_sites = session.query(Site).count() n_records = session.query(RawAvailable).count() stats = { 'n_campgrounds': n_campgrounds, 'n_sites': n_sites, 'n_records': n_records } return render_template('index.html', stats=stats)
def transition_prob_cli(day_0, day_1): store = CompressedAvailabilityStore(get_session()) n_days = (day_1 - day_0).days timestamps = [day_0 + timedelta(days=i) for i in range(n_days)] a_prev = store.get(timestamps[0]) n_changed, n_same = 0, 0 for t in timestamps[1:]: a = store.get(t) c, s = calc_transitions(a, a_prev) n_changed += c n_same += s a_prev = a print('{} changed; {} same; {:.1f}% transition probility'.format( n_changed, n_same, n_changed / (n_changed + n_same)))