Я пытаюсь запустить два скрипта в проекте Python при запуске в Ubuntu, но у него продолжают возникать проблемы.
У меня есть проект Python, подобный следующему:
- пичарм
- Венв
- дата.txt
- глобальные функции.py
- интернет.txt
- интернетдата.txt
- интернеттаймлог.txt
- интернеттрекер.py
- перебои с питанием.txt
- poweroutagetracker.py
- таймлог.txt
Путь к проекту — /home/connor/Documents/Pycharm, а IDE — виртуальная среда Python 3.8.10.
Я пытаюсь запустить два файла: internettracker.py и poweroutagetracker.py. Два кода следующие:
интернеттрекер.py
запросы на импорт
время импорта
импортировать глобальные функции как gf
URL-адрес = "http://www.kite.com"
время ожидания = 5
определение ping_internet():
пытаться:
запрос = запросы.получить (url, тайм-аут = тайм-аут)
вернуть Истина
кроме (requests.ConnectionError, request.Timeout) как исключение:
вернуть ложь
gf.log_today(дополнительно="интернет")
пока верно:
internet_connected = ping_internet()
если интернет_подключен:
строка даты, номер времени = gf.get_log(additional="internet")
настоящее время, сегодня = gf.get_today()
если абс (curtime - timenumber) > 35:
gf.report_data("internet.txt", "Отключение Интернета с [" + строка даты + "] до [" + str(сегодня) + "]")
print("Обнаружен сбой в сети")
gf.log_today(дополнительно="интернет")
время сна(30)
еще:
время сна(15)
poweroutagetracker.py
время импорта
из даты и времени импортировать дату и время
импортировать глобальные функции как gf
пока верно:
строка даты, номер времени = gf.get_log()
настоящее время, сегодня = gf.get_today()
если абс (curtime - timenumber)> 5:
gf.report_data("poweroutages.txt", "Отключение электроэнергии с [" + строка даты + "] до [" + str(сегодня) + "]")
print("Обнаружено отключение питания")
время сна(5)
gf.log_today()
Вспомогательный файл с функциями
глобальные функции.py
время импорта
из даты и времени импортировать дату и время
защита get_today():
вернуть time.time(), datetime.today()
def log_today (дополнительно = ""):
настоящее время, сегодня = get_today()
файл даты = открыть (дополнительный + "date.txt", "w")
datefile.write (ул (сегодня))
файл даты.close()
файл времени = открыть (дополнительно + "timelog.txt", "w")
timefile.write(str(curtime))
файл времени.close()
деф get_log (дополнительный = ""):
файл даты = открыть (дополнительно + "date.txt", "r")
строка даты = файл даты.readline()
файл времени = открыть (дополнительно + "timelog.txt", "r")
номер_времени = число с плавающей запятой (timefile.readline())
вернуть строку даты, число времени
def report_data (имя файла, текст):
настоящее время, сегодня = get_today()
выходной файл = открыть (имя файла, "а+")
outfile.write(str(сегодня) + " | " + текст + "\n")
выходной файл.close()
Я пытался следовать инструкциям от эта тема но, похоже, это не работает.
Я сделал .service со следующим:
[Ед. изм]
Description=Python Internet Watcher
[Оказание услуг]
Тип=простой
WorkingDirectory=/home/connor/Документы/Pycharm
ExecStart=./internettracker.py
[Установить]
WantedBy=многопользовательская.цель
Этот файл был перемещен в /lib/systemd/system/, и до сих пор я не видел, чтобы при запуске ничего не запускалось.