68 lines
2.4 KiB
Python
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()
|