Ubuntu服务器(Putty连接)运行Python脚本及CSV更新问题解决
问题解决方案
问题1:CSV无变化且无法查看Python终端错误
- 后台运行并记录日志:不要直接在终端执行
python3 webhook_server.py,改用后台运行并将所有输出(包括错误)写入日志文件,命令如下:
脚本后台运行后,可通过nohup python3 webhook_server.py > webhook_logs.log 2>&1 &cat webhook_logs.log查看历史日志,或用tail -f webhook_logs.log实时监控输出,以此排查脚本报错或数据接收问题。 - 校验脚本写入逻辑:
- 确认CSV文件打开模式为追加模式,示例代码:
用with open('userData.csv', 'a', newline='', encoding='utf-8') as f: writer = csv.writer(f) writer.writerow(your_data_row)with语句会自动处理文件关闭与缓冲区刷新,避免数据滞留未写入磁盘。 - 在脚本中添加原始请求打印逻辑,比如将LearnWorlds发送的webhook原始数据写入日志,确认请求是否成功到达服务器。
- 确认CSV文件打开模式为追加模式,示例代码:
- 检查文件权限:执行
ls -l userData.csv查看文件权限,确保运行脚本的用户拥有写入权限,若权限不足,执行chmod 644 userData.csv调整权限。
问题2:脚本运行后无法操作其他文件
- 后台运行释放终端:使用
nohup(如上)或screen/tmux工具运行脚本:- 用
screen的话,先执行screen开启新会话,运行脚本后按Ctrl+A+D分离会话,终端即可正常操作其他文件,后续可通过screen -r重新连接查看脚本状态。
- 用
- 避免文件锁定:始终用
with语句操作CSV文件,确保文件在写入完成后立即关闭,防止因脚本异常导致文件被长期锁定。
内容的提问来源于stack exchange,提问作者Tinman208
相关产品推荐
相关产品推荐

