-
Notifications
You must be signed in to change notification settings - Fork 0
Error Handling
Jacky He edited this page Jun 14, 2026
·
1 revision
Tracker exceptions live in torrentlib.Tracker.TrackerQueryException:
from torrentlib import Torrent, TorrentStatus
from torrentlib.Tracker import Query
from torrentlib.Tracker.TrackerQueryException import (
TrackerQueryException,
TimeoutError,
BadRequestError,
InvalidResponseError,
UnexpectedError,
)
torrent = Torrent(
info_hash="1234567890abcdef1234567890abcdef12345678",
event=TorrentStatus.STARTED,
)
try:
Query.single(
torrent=torrent,
url="http://tracker.example.com/announce",
peer_id="-robots-testing12345",
)
except TimeoutError:
print("Tracker request timed out")
except BadRequestError:
print("Tracker rejected the request")
except InvalidResponseError:
print("Tracker returned malformed data")
except UnexpectedError as exc:
print(f"Unexpected tracker error: {exc}")
except TrackerQueryException as exc:
print(f"Tracker error: {exc}")Peer communication exceptions live in torrentlib.Peer.PeerCommunicationException:
from torrentlib.Peer.PeerCommunicationException import (
PeerCommunicationException,
SocketClosedException,
InvalidResponseException,
)