Files
Qbit-Manager/backend/debug_transfer.py
2025-07-18 15:46:07 +08:00

68 lines
2.4 KiB
Python

#!/usr/bin/env python3
"""
调试脚本:检查 qBittorrent transfer info 对象的属性
"""
import json
from services.client_service import ClientService
def debug_transfer_info():
client_service = ClientService()
clients = client_service.get_enabled_clients()
if not clients:
print("没有找到启用的客户端")
return
for client in clients:
print(f"\n调试客户端: {client['name']}")
try:
qbt_client = client_service._create_qbt_client(client)
# 先测试基本连接
print(f"qBittorrent 版本: {qbt_client.app.version}")
# 获取种子列表
torrents = qbt_client.torrents.info()
print(f"种子数量: {len(torrents)}")
# 尝试不同的方式获取传输信息
print("\n尝试获取传输信息:")
# 方法1: transfer.info()
try:
transfer_info = qbt_client.transfer.info()
print(f"transfer.info() 成功: {type(transfer_info)}")
print(f"内容: {transfer_info}")
except Exception as e:
print(f"transfer.info() 失败: {e}")
# 方法2: transfer_info()
try:
transfer_info = qbt_client.transfer_info()
print(f"transfer_info() 成功: {type(transfer_info)}")
print(f"内容: {transfer_info}")
except Exception as e:
print(f"transfer_info() 失败: {e}")
# 方法3: sync.maindata()
try:
maindata = qbt_client.sync.maindata()
print(f"sync.maindata() 成功: {type(maindata)}")
if hasattr(maindata, 'server_state'):
server_state = maindata.server_state
print(f"server_state: {server_state}")
if hasattr(server_state, 'dl_info_speed'):
print(f"下载速度: {server_state.dl_info_speed}")
if hasattr(server_state, 'up_info_speed'):
print(f"上传速度: {server_state.up_info_speed}")
except Exception as e:
print(f"sync.maindata() 失败: {e}")
except Exception as e:
print(f"连接客户端失败: {e}")
import traceback
traceback.print_exc()
if __name__ == "__main__":
debug_transfer_info()