#!/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()