PermissionError: [WinError 5] Доступ запрещен - Python 3.7 Twitch Bot - PullRequest
0 голосов
/ 02 августа 2020

здесь новый кодер. Искали ТАК кучу и гуглили, но я в тупике.

Цель : создать сценарий, запускающий pipenv, и настраиваемого бота для twitch с помощью tkinter.

"""dbot_script.py"""
import subprocess
import tkinter as tk
import runpy

root = tk.Tk()

canvas1 = tk.Canvas(root, width=300, height=300)
canvas1.pack()


def activate_dbot():
    subprocess.call([r'C:\Users\user\.virtualenvs\dbot-T1lnEOta'])
    runpy.run_path(r'C:\Users\user\dbot\bot.py')


button1 = tk.Button(text='Activate dbot', command=activate_dbot, bg='brown', fg='white')
canvas1.create_window(150, 150, window=button1)

root.mainloop()

Ожидаемый результат: запускается pipenv, затем запускается интерфейс tkinter, который запускает бота.

Фактический результат: Появляется интерфейс Tkinter с кнопкой, никаких доказательств pipenv запуск шоу. Сообщение об ошибке: PermissionError: [WinError 5] Доступ запрещен в терминале.

Бот работает нормально, когда я запускаю:

pipenv run python bot.py

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

Модуль, который я использую для подключения к twitch, - это twitchio, и у меня есть доступ к моему ключу oauth.

Полное сообщение об ошибке:

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\tkinter\__init__.py", line 1705, in __call__
    return self.func(*args)
  File "C:\Users\user\dbot\dbot_script.py", line 12, in activate_dbot
    subprocess.call([r'C:\Users\user\.virtualenvs\dbot-T1lnEOta'])
  File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 323, in call
    with Popen(*popenargs, **kwargs) as p:
  File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "C:\Users\user\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 1178, in _execute_child
    startupinfo)
PermissionError: [WinError 5] Access is denied
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...