Почему мой скрипт не работает, даже когда я запускаю его как администратор? - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь написать скрипт на Python, который блокирует веб-сайты.Он должен изменить файл hosts, однако даже когда я запускаю команду от имени администратора, он запрещает доступ.

import time
from datetime import datetime as dt

hosts_path = r"C:\Windows\System32\drivers\etc\hosts"
redirect = "127.0.0.1"
website_list = ["www.facebook.com", "facebook.com"]

while True:
    if dt(dt.now().year,
          dt.now().month,
          dt.now().day, 1) < dt.now() < dt(dt.now().year,
                                           dt.now().month,
                                           dt.now().day, 16):
        print("working time")
        with open(hosts_path, 'r+') as file:
            content = file.read()
            for website in website_list:
                if website in content:
                    pass
                else:
                    file.write(redirect + " " + website + "\n")
    else:
        with open(hosts_path, 'r+') as file:
            content = file.readlines()
            file.seek(0)
            for line in content:
                if not any(website in line for website in website_list):
                    file.write(line)
            file.truncate()
        print("fun hours")
    time.sleep(5)

Как это исправить?

...