OpenTable Reservation Maker For Python

Overview

OpenTable-Reservation-Maker

The code that corresponds with this blog post on writing a script to make reservations for me on opentable

Getting started

Python 3+ required

Install the dependencies

pip install -r requirements.txt

Set up the environment variables (section below)

Change the variables in config.py

Run the file

python3 main.py

Usage

You must set up some environment variables first, and have some details about your OpenTable account beforehand.

Variable Description Required
BEARER_TOKEN Your bearer token from an intercepted OpenTable network request Yes
FROM_PHONE_NUMBER The twilio number that will be sending the text notifications
TO_PHONE_NUMBER The phone number that text messages will go to, and that is associated with your opentable account Yes
TWILIO_ACCOUNT_SID Twilio account SID
TWILIO_ACCOUNT_TOKEN Twilio account token
OPENTABLE_GPID Open table GID from a previous request Yes
OPENTABLE_DINERID Opentable diner id for your profile Yes

Config

config.py has the required configuration. I haven't added setup

Monitoring

You can set up whatever preferred running solution you like. I set mine up with cron.

crontab -e

With an entry of

* * * * * /usr/bin/python3 /home/jonluca/opentable/main.py

You can set up your cron schedule how you'd like. I set mine up to check every minute, but you can use this tool to configure yours.

Todo

  • Authentication endpoint so that you don't need to already have your bearer token and diner ID
  • Restaurant search so that you don't need to already know the ID of the restaurant you're looking for
  • Deletion endpoint (Not sure if this is useful? But maybe if this turns into an API)
  • Date exclusions - make it so that you can exclude specific dates that don't work
  • Support multiple restaurants being watched at the same time
  • Support restaurants that require a credit card
Owner
JonLuca De Caro
swe @Citadel, previously @pinterest. @google, @apple, @ElevateSecurity.
JonLuca De Caro
Usos Semester average helper

Usos Semester average helper Dzieki temu skryptowi mozesz sprawdzic srednia ocen na kazdy odbyty przez ciebie semestr PARAMETERS required: '--username

2 Jan 17, 2022
This is an example manipulation package of for a robot manipulator based on Drake with ROS2.

This is an example manipulation package of for a robot manipulator based on Drake with ROS2.

Sotaro Katayama 1 Oct 21, 2021
JARVIS PC Assistant is an assisting program to make your computer easier to use

JARVIS-PC-Assistant JARVIS PC Assistant is an assisting program to make your computer easier to use Welcome to the J.A.R.V.I.S. PC Assistant help file

Dasun Nethsara 2 Dec 02, 2022
MDAnalysis tool to calculate membrane curvature.

The MDAkit for membrane curvature analysis is part of the Google Summer of Code program and it is linked to a Code of Conduct.

MDAnalysis 19 Oct 20, 2022
Prometheus exporter for chess.com player data

chess-exporter Prometheus exporter for chess.com player data implemented via chess.com's published data API and Prometheus Python Client Example use c

Mário Uhrík 7 Feb 28, 2022
An extended version of the hotkeys demo code using action classes

An extended version of the hotkeys application using action classes. In adafruit's Hotkeys code, a macro is using a series of integers, assumed to be

Neradoc 5 May 01, 2022
An app to help people apply for admissions on schools/hostels

Admission-helper About An app to help people apply for admissions on schools/hostels This app is a rewrite of Admission-helper-beta-v5.8.9 and I impor

Advik 3 Apr 24, 2022
combs is a package used to generate all possible combinations of a given length k on a given set.

The package combs is a package used to generate all possible combinations of a given length k on a given set. The set is given as a list, and k must b

1 Dec 24, 2021
A pypi package details search python module

A pypi package details search python module

Fayas Noushad 5 Nov 30, 2021
Automated Birthday Wisher built using Python

Automated Birthday Wisher This Automation of wishing Birthday is achieved using Python. Never forget to wish birthday! Table of contents Overview Scre

yashviradia 1 Nov 29, 2021
Compile Binary Ninja's HLIL IR to LLVM, for purposes of compiling it back to a binary again.

Compiles BinaryNinja's HLIL to LLVM Approach Sweep binary for global variables, create them Sweep binary for (used?) external functions, declare those

Kyle Martin 31 Nov 10, 2022
App and Python library for parsing, writing, and validation of the STAND013 file format.

python-stand013 python-stand013 is a Python app and library for parsing, writing, and validation of the STAND013 file format. Features The following i

Oda 3 Nov 09, 2022
Better firefox bookmarks script for rofi

rofi-bookmarks Small python script to open firefox bookmarks with rofi. Features Icons! Only show bookmarks in a specified bookmark folder Show entire

32 Nov 10, 2022
CoreSE - basic of social Engineering tool

Core Social Engineering basic of social Engineering tool. just for fun :) About First of all, I must say that I wrote such a project because of my int

Hamed Mohammadvand 7 Jun 10, 2022
Basic Clojure REPL for Sublime Text

Basic Clojure REPL for Sublime Text Goals: Decomplected: just REPL, nothing more Zero dependencies: works directly with pREPL Compact: Display code ev

Nikita Prokopov 23 Dec 24, 2021
Semester Project on Signal Processing @CS UCU 2021

Blur Detection with Haar Wavelet Transform Requirements Python3 opencv-python PyWavelets Install these using the following command: $ pip install -r r

ButynetsD 2 Oct 15, 2022
Transparently load variables from environment or JSON/YAML file.

A thin wrapper over Pydantic's settings management. Allows you to define configuration variables and load them from environment or JSON/YAML file. Also generates initial configuration files and docum

Lincoln Loop 90 Dec 14, 2022
Parser for the GeoSuite[tm] PRV export format

Parser for the GeoSuite[tm] PRV export format This library provides functionality to parse geotechnical investigation data in .prv files generated by

EMerald Geomodelling 1 Dec 17, 2021
An example project that shows how to check if a certain macro is active in a file.

PlatformIO Check Compiler Flags Example Description Demonstrates the usage of an extra script and a special compilter invocation to get the active mac

Maximilian Gerhardt 1 Oct 28, 2021
An After Effects render queue for ShotGrid Toolkit.

AEQueue An After Effects render queue for ShotGrid Toolkit. Features Render multiple comps to locations defined by templates in your Toolkit config. C

Brand New School 5 Nov 20, 2022