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
Muchas gracias.
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


0