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
A python program for rick rolling people.

Rickware A python program for rick rolling people. (And annoying them too) What is rick roll? Read this wikipedia article - Rickrolling About program

2 Jan 18, 2022
Taichi is a parallel programming language for high-performance numerical computations.

Taichi is a parallel programming language for high-performance numerical computations.

Taichi Developers 22k Jan 04, 2023
A play store search module

A play store search module

Fayas Noushad 5 Dec 01, 2021
☘️ Projet Voltaire Solver in Python3

☘️ Projet Voltaire Solver in Python3

Bidouffe 8 Dec 02, 2022
Create rangebased on lists or values of the range itself. Range any type. Can you imagine?

funcao-allrange-for-python3 Create rangebased on lists or values of the range itself. Range any type. Can you imagine? WARNING!!! THIS MODULE DID NOT

farioso-fernando 1 Feb 09, 2022
Python plugin for Krita that assists with making python plugins for Krita

Krita-PythonPluginDeveloperTools Python plugin for Krita that assists with making python plugins for Krita Introducing Python Plugin developer Tools!

18 Dec 01, 2022
A simple watcher for the XTZ/kUSD pool on Quipuswap

Kolibri Quipuswap Watcher This repo holds the source code for the QuipuBot bot deployed to the #quipuswap-updates channel in the Kolibri Discord Setup

Hover Labs 1 Nov 18, 2021
pyinsim is a InSim module for the Python programming language.

PYINSIM pyinsim is a InSim module for the Python programming language. It creates socket connection with LFS and provides many classes, functions and

2 May 12, 2022
RxPY - The Reactive Extensions for Python (RxPY)

The Reactive Extensions for Python (RxPY) A library for composing asynchronous and event-based programs using observable collections and query operato

ReactiveX 4.4k Dec 29, 2022
Бэкапалка таблиц mysql 8 через брокер сообщений nats

nats-mysql-tables-backup Бэкап таблиц mysql 8 через брокер сообщений nats (проверено и работает в ubuntu 20.04, при наличии python 3.8) ПРИМЕРЫ: Ниже

Constantine 1 Dec 13, 2021
Create a program for generator Truth Table

Python-Truth-Table-Ver-1.0 Create a program for generator Truth Table in here you have to install truth-table-generator module for python modules inst

JehanKandy 10 Jul 13, 2022
Make after-work Mending More flexible In Python

Mending Make after-work Mending More flexible In Python A Lite Package focuses on making project's after-post mending pythonic and flexible. Certainly

2 Jun 15, 2022
Mmr image postbot - Бот для создания изображений с новыми релизами в сообщество ВК MMR Aggregator

Mmr image postbot - Бот для создания изображений с новыми релизами в сообщество ВК MMR Aggregator

Max 3 Jan 07, 2022
Simple Python-based web application to allow UGM students to fill their QR presence list without having another device in hand.

Praesentia Praesentia is a simple Python-based web application to allow UGM students to fill their QR presence list without having another device in h

loncat 20 Sep 29, 2022
Async timeit - Async version of python's timeit

Async Timeit Replica of default python timeit module with small changes to allow

Raghava G Dhanya 3 Apr 13, 2022
Solcast Integration for Home Assistant

Solcast Solar Home Assistant(https://www.home-assistant.io/) Component This custom component integrates the Solcast API into Home Assistant. Modified

Greg 45 Dec 20, 2022
That is a example of a Book app on Python, made with support of all JS libraries on React framework

React+Python Books App You can use this repository whenever you want Used for a video Create the database: python -m dbutils Start the web server: pyt

Koma Human 1 Apr 20, 2022
A passive recon suite designed for fetching the information about web application

FREAK Suite designed for passive recon Usage: python3 setup.py python3 freak.py warning This tool will throw error if you doesn't provide valid api ke

toxic v3nom 7 Feb 17, 2022
🤞 Website-Survival-Detection

- 🤞 Website-Survival-Detection It can help you to detect the survival status of the website in batches and return the status code! - 📜 Instructions

B0kd1 4 Nov 14, 2022
Chalice - A tool to facilitate Python based lambda deployment

Chalice is a tool to facilitate Python based lambda deployment. This repo contains the output of my basic exploration of this tool.

Csilla Bessenyei 1 Feb 03, 2022