运行Python脚本的Linux服务不更新SQL数据库

2024-09-26 04:54:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python脚本,可以扫描股票市场的交易,并将它们保存在SQL数据库中。如果我直接运行脚本python3 fetchTradesLuno24Hours.py,它会自动工作,这会更新数据库。但是,如果我将其作为服务运行,它将停止更新数据库。如果我运行systemctl status lunoDatabase.service,则表明服务已成功运行。该服务由每隔几个小时运行一次的lunoDatabase.timer触发。如果我运行systemctl status lunoDatabase.timersystemctl list-timers,我会看到计时器工作并且脚本被成功触发。该服务报告python脚本运行时与预期一致(大约6分钟),代码成功退出。 在我尝试在无限循环中运行python脚本之前,它工作得很好,并且从服务中正确更新了数据库。当我添加计时器时,它停止更新数据库。我希望该服务更新SQL数据库并由计时器触发。我怎样才能解决这个问题


Tags: py脚本数据库sqlstatusservice交易python3
1条回答
网友
1楼 · 发布于 2024-09-26 04:54:08

问题出在python脚本中。因为我从根文件夹中寻址python文件,所以我应该在database.py中指定数据库的绝对路径

db = sqlite3.connect('home/user/bot/transactions.db')

而不是

db = sqlite3.connect('transactions.db')

谢谢大家!

相关问题 更多 >