Created
September 3, 2021 14:52
-
-
Save ananthrajsingh/98eecfe0a351eb588445244ee9a673e3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import requests | |
from bs4 import BeautifulSoup | |
import smtplib, ssl | |
URL = "https://www.zomato.com/bareilly/momo-hut-subhash-nagar-colony/order" | |
headers = { | |
'authority': 'www.zomato.com', | |
'sec-ch-ua': '"Chromium";v="92", " Not A;Brand";v="99", "Google Chrome";v="92"', | |
'sec-ch-ua-mobile': '?0', | |
'upgrade-insecure-requests': '1', | |
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36', | |
'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9', | |
'sec-fetch-site': 'same-origin', | |
'sec-fetch-mode': 'navigate', | |
'sec-fetch-user': '?1', | |
'sec-fetch-dest': 'document', | |
'accept-language': 'en-GB,en;q=0.9', | |
} | |
page = requests.get(URL, headers=headers) | |
soup = BeautifulSoup(page.content, "html.parser") | |
subtitles = soup.find_all("div", class_="subtitle") | |
# Check if the restaurant is open or not | |
is_open = False | |
if len(subtitles) > 0: | |
is_open = "Currently closed" not in subtitles[0].decode_contents() | |
else: | |
is_open = True | |
# Find Paneer momo | |
paneer_momos = soup.find_all(text='Paneer Steamed Momos [6 Pieces]') | |
are_paneer_momos_available = len(paneer_momos) > 0 | |
# Find Chicken momo | |
chicken_momos = soup.find_all(text='Chicken Steamed Momos [6 Pieces]') | |
are_chicken_momos_available = len(chicken_momos) > 0 | |
# Logging | |
print("Is open: " + str(is_open)) | |
print("Are paneer momos available: " + str(are_paneer_momos_available)) | |
print("Are chciken momos available: " + str(are_chicken_momos_available)) | |
if is_open and are_chicken_momos_available: | |
port = 465 | |
smtp_server = "smtp.gmail.com" | |
sender_email = "sender.email@gmail.com" | |
receiver_email = "receiver.email@gmail.com" | |
password = "sender_email_password" | |
message = "Chicken momos are available on Momo Hut" | |
if are_paneer_momos_available: | |
message = "Chicken and paneer momos are available on Momo Hut" | |
context = ssl.create_default_context() | |
with smtplib.SMTP_SSL(smtp_server, port, context=context) as server: | |
server.login(sender_email, password) | |
# Send the email | |
server.sendmail(sender_email, receiver_email, message) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment