python-qbittorrent库下载电影学习记录(含基本使用和常用函数)

本文记录了使用Python的python-qbittorrent库自动化下载从爬虫获取的magnet链接的过程。首先介绍了如何安装和配置qbittorrent,接着详细讲解了如何通过python-qbittorrent库连接客户端,设置连接参数,并定义函数实现任务管理和速度监控。通过监控下载速度和元数据检测,选择最佳的magnet资源进行下载。
摘要由CSDN通过智能技术生成

        最近因为一些需求,爬了一个带有magnet磁力链接的网站(如果有对怎么爬感兴趣可以说一声,这个文章基本只是为了当成自己的学习记录用哒,也会基于爬完的数据库开始做下一步),大致的结构是每个影片有自己的名字和他人分享的一系列magnet链接,需要批量下载这些磁力链接到本地然后归档。作为一个业余程序员当然不能直接一个一个手动下载了。于是就考虑用python来简化这个工作。

        经过测试发现这一系列magnet中有的是连接不上的(用qbittorrent会一直卡在检索元数据的位置),但是对于同一个影片显然我只需要找到一个可用的资源,也就是获得一个下载最快的magnet就可以。每次进行手动比对、调整保存的路径非常麻烦,于是就通过python-qbittorrent来解决这个问题~

        python-qbittorrent库的pypi和文档都是英文的,这一页的底部点击Read the docs可以直接跳转到官方文档。啃了半天才看懂,基本过程如下:

        首先安装python-qbittorrent库:用经典的pip安装就可以,也可以在pycharm里面找到并安装。

pip install python-qbittorrent

        之后是安装对应系统版本的qbittorrent软件,我写代码用的电脑是mac,所以去搜mac的qbittorrent安装即可,随后需要对软件进行一些设置。

        必要设置:点击qbittorrent上面菜单栏的齿轮,找到首选项里面的Web用户界面,如果需要远程则根据ip地址和服务器域名相应设置,我暂时不需要,则只需要设置下面的本地验证,可以选择账号密码,默认是admin/admin,也可以选择对于本地主机上的客户端跳过验证。

        之后为了个人的功能的实现,在连接选项卡中设置了全局最大连接数和每torrent最大连接数为100。

        使用的时候定义了一个函数如下:

from qbittorrent import Client

def connect_to_qbit():
    qb = Client('http://127.0.0.1:8080/', verify=False)

    qb.login('我的用户名', '我的密码')
    # not required when 'Bypass from localhost' setting is active.
    # defaults to admin:admin.
    # to use defaults, just do qb.login()

    torrents = qb.torrents()
    return qb, torrents

        对于这里的qb和torrents的理解:qb事实上是Client的连接,而torrents是执行torrents=qb.torrents()的时候,qbittorrent客户端内存在的所有任务构成的元组。元组内的每一个元素是一个字典,对应着一个任务的相关信息,个人认为比较关键的信息如下:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值