You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PythonAnywhere AlwaysOn任务无法识别Telethon会话文件求助

解决PythonAnywhere AlwaysOn任务无法识别Telethon会话文件的问题

常见原因及解决办法

1. 会话文件路径不匹配(最可能的原因)

AlwaysOn任务的默认工作目录和你在Bash里运行脚本的目录大概率不一样,导致脚本找不到name.session。

解决方式:

  • 用绝对路径指定会话文件:先在Bash里输入pwd拿到脚本所在的完整路径(比如/home/your_username/your_script_dir),然后修改代码里的session参数:
async with TelegramClient(session='/home/your_username/your_script_dir/name.session', api_id=api_id, api_hash=api_hash) as client:
  • 或者在脚本开头加一段代码,强制切换到脚本自身所在目录:
import os
# 切换到脚本所在目录
os.chdir(os.path.dirname(os.path.abspath(__file__)))

2. 会话文件权限问题

虽然你给出的权限是-rw-r--r--(其他用户可读),但还是可以再确认下权限是否足够:
在Bash里执行chmod 644 name.session,确保文件对运行任务的用户可读。

3. 检查会话文件是否完全验证

有时候Bash里能登录,但会话文件可能没走完完整验证流程。再在Bash里跑一次脚本,确认完全没有输入提示,确保会话文件是有效的。

4. 修正AlwaysOn任务的启动命令

检查AlwaysOn任务的启动命令是否正确指定了脚本目录。比如脚本在/home/your_username/scripts/下,启动命令应该写成:

cd /home/your_username/scripts && python3 your_script.py

别直接写python3 your_script.py,不然会在默认目录执行,找不到会话文件。


内容的提问来源于stack exchange,提问作者snub-fighter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 14:42:10