Qbittorrent Api报错:'Client'无download_from_link属性如何解决
问题原因
- 你使用的
qbittorrent-api库近期升级到了v2.x及以上版本,该版本进行了大规模的API命名重构,原download_from_link方法已被移除,所以触发属性不存在的报错。
解决方案
方案1:适配新版本API(推荐)
将原download_from_link调用替换为新方法torrents_add,参数逻辑几乎兼容,修改后的代码片段如下:
self.qbtNoxThread = threading.Thread(target = self.__startQbittorrentNox, daemon = True) self.qbtNoxThread.start() qbt_client = qbittorrentapi.Client(host='localhost', port=8080, username='admin', password='adminadmin') for i in range(5): try: qbt_client.auth_log_in() self.client = qbt_client # 替换为新的方法名 qbt_client.torrents_add(urls="magnet:?xt=urn:btih:53445B43ADC992F5354EA0BC34A6429187C6459C&dn=100+Beautiful+Ultra+HD+4K+Wallpapers+Pack-78&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.dler.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopentracker.i2p.rocks%3A6969%2Fannounce&tr=udp%3A%2F%2F47.ip-51-68-199.eu%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.internetwarriors.net%3A1337%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2920%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce") print("Qbittorrent login succesful") break except qbittorrentapi.LoginFailed as e: print(e) time.sleep(1) #sometimes the qbtnox server needs a second to boot up or something.
额外说明:v2.x版本的Client实例化时如果传入了账号密码,会自动处理登录逻辑,你可以根据需要省略显式调用auth_log_in()的步骤。
方案2:降级库版本
如果不想修改现有代码,可以将qbittorrent-api回退到最后一个v1.x版本,执行以下安装命令即可:pip install qbittorrent-api==1.9.0
注意事项
- 请确保你本地运行的qBittorrent服务端版本与客户端库版本兼容,v2.x版本的
qbittorrent-api仅支持qBittorrent v4.2及以上服务端版本。
内容的提问来源于stack exchange,提问作者jmciver
相关产品推荐
相关产品推荐

