This commit is contained in:
@@ -2,26 +2,33 @@
|
||||
|
||||
from qbittorrent import Client
|
||||
|
||||
|
||||
class TorrentApi:
|
||||
def __init__(self, ip, password, username='admin'):
|
||||
def __init__(self, ip, password, username="admin"):
|
||||
# Initialize the qBittorrent client
|
||||
self.qb = Client(ip)
|
||||
self.qb.login(username, password)
|
||||
|
||||
def get_torrents(self):
|
||||
return self.get_filtered_torrents('all')
|
||||
|
||||
return self.get_filtered_torrents("all")
|
||||
|
||||
def get_filtered_torrents(self, state):
|
||||
|
||||
self.qb.login()
|
||||
|
||||
# Retrieve torrents filtered by the given state
|
||||
torrents = self.qb.torrents(filter=state)
|
||||
# Extract relevant information
|
||||
torrent_list = []
|
||||
for torrent in torrents:
|
||||
torrent_info = {
|
||||
'name': torrent['name'],
|
||||
'state': torrent['state'],
|
||||
'progress': torrent['progress'] * 100, # Convert to percentage
|
||||
'eta': torrent['eta']
|
||||
"name": torrent["name"],
|
||||
"state": torrent["state"],
|
||||
"progress": torrent["progress"] * 100, # Convert to percentage
|
||||
"eta": torrent["eta"],
|
||||
"upspeed": torrent["upspeed"],
|
||||
"dlspeed": torrent["dlspeed"],
|
||||
"size": torrent["size"],
|
||||
}
|
||||
torrent_list.append(torrent_info)
|
||||
return torrent_list
|
||||
|
||||
Reference in New Issue
Block a user