我有一个python脚本,它扫描股票市场中的交易并将它们保存在sql数据库中。如果我直接运行脚本,它就可以自己工作 python3 fetchTradesLuno24Hours.py
这会更新数据库。但是,如果我将其作为服务运行,它将停止更新数据库。如果我跑了 systemctl status lunoDatabase.service
它表明服务成功运行。此服务由触发 lunoDatabase.timer
每隔几个小时运行一次。如果我跑了 systemctl status lunoDatabase.timer
或者 systemctl list-timers
我看到计时器工作,脚本被成功触发。服务报告python脚本运行时与预期一致(大约6分钟),代码成功退出。在我尝试在无限循环中运行python脚本之前,它运行得很好,并且从服务中正确更新了数据库。当我添加计时器时,它停止更新数据库。我想服务更新的sql数据库,并由定时器触发。我该怎么修?
1条答案
按热度按时间3hvapo4f1#
问题出在python脚本中。因为我从根文件夹中寻址python文件,所以我应该指定数据库的绝对路径
database.py
.db = sqlite3.connect('home/user/bot/transactions.db')
而不是db = sqlite3.connect('transactions.db')
谢谢大家!