juftin/camply

Support for reservations.ontarioparks.com (goingtocamp)

rpdids opened this issue ยท 4 comments

rpdids commented

Is your feature request related to a problem? Please describe.
The Ontario parks booking system seems to run on goingtocamp in spite of the custom domain name (I was able to make a basic api requests with goingtocamp endpoints). AFAIK it seems like it should be able to be added as a goingtocamp rec area.

Describe the solution you'd like
reservations.ontarioparks.com added as a goingtocamp rec area

Additional context
Seeing the previous PRs, I may try to implement this myself (though don't wait if you've got it ๐Ÿ˜…).

juftin commented

I tried this one actually, last I checked they have CAPTCHA protection on their domain preventing it from working with camply. Let me know if you encounter anything different. You can add it to the GoingToCamp rec areas here to test: https://github.com/juftin/camply/blob/main/camply/providers/going_to_camp/rec_areas.py

rpdids commented

Very interesting, is there a specific request that's getting challenged, or is it everything?

rpdids commented

Ah looks like it's everything getting challenged. A bit of a shame. There's likely a way to program around the captcha but there's a few issues with that. Namely, it'd be a decent bit of work for only a single rec area, it's likely that it'll get patched at some point, and I think a tool like this needs to "play nice" and putting a bunch of work into defeating captchas doesn't seem very nice ๐Ÿ˜… Oh well!

juftin commented

Yeah agreed - sorry, it's a bummer I know. My policy on camply's approach to captchas that I won't try to break them ๐Ÿ˜ž. This blurb on captcha was taken from the discord - but it's good to document somewhere here on GitHub as well:

Unfortunately, that type of feature [breaking captchas] will need to live on an unofficial fork outside of camply. If other providers implement captcha as well, they'll no longer be supported. Not only because of the user experience and maintenance burden, but because I have to respect their decision to keep bots out of their data.

Camply kind of skirts the edge on whether or not it is a tool that our providers approve of. Even though it's built in public, I have yet to hear from anyone asking me to take the package down or disconnect it from their website - so it seems like they at least tolerate it. Once we start breaking people's captchas (and the terms of service of captcha itself) that balance could shift and the future of camply for all providers might hang in the balance.