Запуск скрипта Python при загрузке на Raspberry PiLinux

Ответить
Anonymous
 Запуск скрипта Python при загрузке на Raspberry Pi

Сообщение Anonymous »


Написанный мною код будет работать в системе без монитора, мыши или клавиатуры и будет извлекаться со сканера штрих-кода, поэтому мне нужен способ запускать его сразу после загрузки системы. Сценарий работает отлично, когда вы открываете его в интерпретаторе Python, но когда я пытаюсь загрузить его из файла .service, он начинает выдавать мне проблемы с зависимостями, говоря, что Pynput не может быть найден или что у меня нет X-сервера бегу.

вот мой код

подпроцесс импорта из клавиатуры импорта Pynput из zplTemplate импорт шаблонаFill в то время как (Правда): защита on_key_release (ключ): глобальный штрих-код пытаться: k = ключ.char если k.isalnum(): штрих-код += к кроме AttributeError: если клавиша == клавиатура.Key.enter: вернуть ложь вернуть истину штрих-код = "" с клавиатурой.Listener(on_release=on_key_release) в качестве прослушивателя: прослушиватель.join() print("Штрих-код:", штрих-код) шаблон = templateFill(штрих-код) распечатать (шаблон) с open('zpl.txt', 'w') как f: f.write(шаблон) print_command = ["lp", "zpl.txt"] subprocess.run(print_command) мой служебный файл

[Единица измерения] Описание=Скрипт Python для дубликатора После=network.target [Услуга] ExecStart=/usr/bin/python3 /home/symbology/Desktop/UniversalDuplicator-main/duplicator_linux.py WorkDirectory=/home/symbology/Desktop/UniversalDuplicator-main Перезапустить=всегда StandardOutput=системный журнал Стандартная ошибка = системный журнал SyslogIdentifier=дубликатор [Установить] WantedBy=multi-user.target а затем пример ошибки, с которой я столкнусь

Nov 02 10:55:02 raspberrypi systemd[1]: /etc/systemd/system/onstart2.service:9: стандартный тип вывода системного журнала устарел, автоматически обновляется до jour> 2 ноября 10:55:02 raspberrypi systemd[1]: /etc/systemd/system/onstart2.service:10: системный журнал стандартного типа вывода устарел, автоматически обновляется до jou> 2 ноября, 10:55:02 raspberrypi systemd [1]: запущен скрипт Python для дубликатора. 2 ноября, 10:55:02 raspberrypi duplicator [2141]: обратная трассировка (последний последний вызов): 2 ноября, 10:55:02 raspberrypi duplicator [2141]: файл «/home/symbology/Desktop/UniversalDuplicator-main/duplicator_linux.py», строка 2, в 02 ноября, 10:55:02 Дубликатор raspberrypi [2141]: из клавиатуры импорта Pynput 2 ноября, 10:55:02 дубликатор raspberrypi [2141]: файл «/usr/local/lib/python3.9/dist-packages/pynput/__init__.py», строка 40, в 2 ноября, 10:55:02 Дубликатор raspberrypi [2141]: из . импортировать клавиатуру 2 ноября, 10:55:02 дубликатор raspberrypi [2141]: файл «/usr/local/lib/python3.9/dist-packages/pynput/keyboard/__init__.py», строка 31, в 02 ноября, 10:55:02 Дубликатор raspberrypi [2141]: бэкэнд = бэкэнд (__name__) 2 ноября, 10:55:02 дубликатор raspberrypi [2141]: файл «/usr/local/lib/python3.9/dist-packages/pynput/_util/__init__.py», строка 76, в серверной части 2 ноября 10:55:02 дубликатор raspberrypi [2141]: поднять ImportError('эта платформа не поддерживается: {}'.format( 02 ноября 10:55:02 raspberrypi duplicator [2141]: ImportError: эта платформа не поддерживается: («не удалось получить X-соединение: неверное отображаемое имя «»», Disp> 2 ноября, 10:55:02 raspberrypi duplicator [2141]: попробуйте одно из следующих решений: 2 ноября, 10:55:02 raspberrypi duplicator [2141]: * Убедитесь, что у вас работает X-сервер и что переменная среды DISPLAY установлена ​​c> 2 ноября 10:55:02 raspberrypi systemd [1]: onstart2.service: основной процесс завершен, код = выход, статус = 1/ОШИБКА 2 ноября 10:55:02 raspberrypi systemd[1]: onstart2.service: Ошибка с результатом «код выхода». 2 ноября, 10:55:02 raspberrypi systemd[1]: onstart2.service: запланированное задание перезапуска, счетчик перезапуска равен 1. 2 ноября, 10:55:02 raspberrypi systemd [1]: остановлен скрипт Python для дубликатора. 2 ноября, 10:55:02 raspberrypi systemd [1]: запущен скрипт Python для дубликатора. 02 ноября, 10:55:03 raspberrypi duplicator [2143]: обратная трассировка (последний последний вызов): 2 ноября, 10:55:03 raspberrypi duplicator [2143]: файл «/home/symbology/Desktop/UniversalDuplicator-main/duplicator_linux.py», строка 2, в еще одна очень странная проблема заключается в том, что после того, как я создал файл .service, не имеет значения, редактирую ли я его или код Python, на который он ссылается, он всегда будет выдавать одну и ту же ошибку.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»