From 2bebe63b26e68c97dc2c213165b82bd4f99c5aed Mon Sep 17 00:00:00 2001 From: Deepraj Rakshit Date: Sat, 1 Oct 2022 05:24:11 +0530 Subject: [PATCH] Create website-blocker.py --- Automation/website-blocker.py | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 Automation/website-blocker.py diff --git a/Automation/website-blocker.py b/Automation/website-blocker.py new file mode 100644 index 0000000..c34a4ee --- /dev/null +++ b/Automation/website-blocker.py @@ -0,0 +1,45 @@ +import time +from datetime import datetime as dt + +sites_to_block = [ + "www.facebook.com", + "facebook.com", + "www.youtube.com", + "youtube.com", + "www.gmail.com", + "gmail.com", +] + +Linux_host = "/etc/hosts" +Window_host = r"C:\Windows\System32\drivers\etc\hosts" +default_hoster = Linux_host +redirect = "127.0.0.1" + + +def block_websites(start_hour, end_hour): + while True: + if ( + dt(dt.now().year, dt.now().month, dt.now().day, start_hour) + < dt.now() + < dt(dt.now().year, dt.now().month, dt.now().day, end_hour) + ): + print("Do the work ....") + with open(default_hoster, "r+") as hostfile: + hosts = hostfile.read() + for site in sites_to_block: + if site not in hosts: + hostfile.write(redirect + " " + site + "\n") + else: + with open(default_hoster, "r+") as hostfile: + hosts = hostfile.readlines() + hostfile.seek(0) + for host in hosts: + if not any(site in host for site in sites_to_block): + hostfile.write(host) + hostfile.truncate() + print("Good Time") + time.sleep(3) + + +if __name__ == "__main__": + block_websites(9, 21)