[ale] How to drive Linux browser to make a campground sniper?

Putnam, James M. putnamjm at sa.edu
Sat Jan 13 15:00:22 EST 2018


   I'd first try to talk to their API directly. If it has the data you want,
   you'll have a large number of options for looking at it and sending 
   notifications.

https://ridb.recreation.gov/

--
James  M. Putnam
Visiting Professor of Computer Science

The air was soft, the stars so fine,
the promise of every cobbled alley so great,
that I thought I was in a dream.
________________________________________
From: Ale [ale-bounces at ale.org] on behalf of Neal Rhodes via Ale [ale at ale.org]
Sent: Saturday, January 13, 2018 2:16 PM
To: Atlanta Linux Enthusiasts
Subject: [ale] How to drive Linux browser to make a campground sniper?

Boring "Real-World Details":

So, we are planning a summer trip to Glacier National Park in Montana.

We would really like to camp at Many Glaciers Campground in the park.  However, at present,  all the sites are already reserved.   They are reserved through recreation.gov, starting 6 months to the day from today.

But we have a really strong impression that people initially book a long stretch, then later either reduce the duration once they get more specific plans, or cancel.

SO, we really want to detect if/when sites become available over the next 6 months and jump on it before someone else does.

There is someone who offers this as a service for $40 a reservation, irrespective of whether they are successful.

Exciting Technology Application:

Initially I looked at the HTML for their search page, with the thought of using "wget" to simulate the reservation request.   That increasingly looks like a fool's errand, assuming that they may have session cookies related to sign-on and other magic handshake crap that would be difficult to simulate.  And what happens when they alter their data fields?

Then I thought:  All I want to do is:
Setup a browser window on our Centos 6 desktop, any browser that understands https;
Run that browser through the responses to get it to the search window on this campground, and put in all the dates and related input.
Then:
Run SOMETHING that will automate:
Hit the Search Submit button;
See if the resultant page contains "No Suitable availability"
IF Not: Email me
Sleep 15 minutes
Rinse, Later, Repeat

This sounds to me like a very elemental application of a test/control manager for a GUI interface.    If I can automate an existing browser, we can eliminate all the complexities of trying to fake out their web server.

Since this just sits on my desk in the basement, I can live with hard-coded screen coordinates.

What tools exist in Linux to do this?

regards,

Neal Rhodes
MNOP Ltd




More information about the Ale mailing list