Hello Everyone, Can anyone tell me below code is optimized or not? I am working on a website blocker python project and looking to source code. I have found this source code from the programming community and want to know your expert view, Is it right to optimize code as size or speed wise?
import time
from datetime import datetime as dt
sites_to_block = [
“www.facebook.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)