Python - Permiso denegado en la ejecución de programa

 
Vista:
sin imagen de perfil
Val: 8
Ha disminuido su posición en 9 puestos en Python (en relación al último mes)
Gráfica de Python

Permiso denegado en la ejecución de programa

Publicado por Dionisio (4 intervenciones) el 20/11/2020 02:49:59
Buen día, acabo de realizar un código básico que bloque websites en ciertos periodos de tiempo (un código muy común).

El script parece estar bien esccrito, ya que cuando selecciono el archivo hosts desde una carpeta diferente a la de raiz de system 32, el programa se ejecuta. Pero a la hora de seleccionar la ruta original C:\Windows\System32\drivers\etc
surge este error:
Traceback (most recent call last):
File "C:\Users\Alfredo Mendoza\OneDrive\Escritorio\BLOQUEOPYTHON\blocker.pyw", line 14, in <module>
with open(hosts_path, 'r+') as file:
PermissionError: [Errno 13] Permission denied: 'C:\\Windows\\System32\\drivers\\etc'



Aquí el código
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import time
from datetime import datetime as dt
 
hosts_temp = "hosts"
hosts_path = r"C:\Windows\System32\drivers\etc"
redirect = "127.0.0.1"
websites_list = ["www.caliente.mx", "caliente.mx"]
from_hour = 7
to_hour = 23
 
while True:
    if dt(dt.now().year, dt.now().month, dt.now().day, from_hour) < dt.now() < dt(dt.now().year, dt.now().month, dt.now().day, to_hour):
        print("Working hours...")
        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 websites_list):
                    file.write(line)
            file.truncate()
        print("Avible")
    time.sleep(3)


Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Permiso denegado en la ejecución de programa

Publicado por tincopasan (1082 intervenciones) el 20/11/2020 05:47:54
dos cosas:
1) que raro que funcione con la barra "\" python usa la barra "/" para los path
2) probablemente necesite permisos de administrador, ya que estás en un directorio reservado de windows,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar

Permiso denegado en la ejecución de programa

Publicado por Dionisio (4 intervenciones) el 20/11/2020 23:14:41
Gracias por responder, algún consejo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar