Skip to content

linkgrabber

Alexander Herling edited this page Oct 15, 2026 · 25 revisions

The LinkGrabber

The LinkGrabber is the review stage in front of the queue. Links arrive here from every intake route, get grouped into packages, are checked for availability, and only reach the download list when you say so.

Open it from the sidebar or with 2.

What arrives here

The LinkGrabber: the icon bar at the top, the hoster filter, and the row above the list with the selection counted in packages and links, the state filter and Filters; below it the one-line selection bar with the same count, category, priority and post-processing and its actions as icons; then a ticked package of online links with sizes, hosts, category, priority and its actions, and further packages below; the status bar at the bottom counts the selected links and their size

Route Notes
Add links in the interface One link, many links, or any text with links embedded in it
Clipboard and Click'n'Load 2 Via the desktop capture agent; Click'n'Load also via the browser extension on a site you allowed, when no agent runs
The browser extension Context menu, popup, intercepted browser downloads, NZB, torrent, ZIP and link-container files from a site you allowed, and local files through Send file to rDownloader…
The desktop capture agent's file hand-over A link container or torrent opened with the agent, dropped on its desktop shortcut or sent with Send to
Watched folders .nzb, .torrent, .dlc, .ccf, .rsdf, .rdlinks
Drag and drop .nzb, .torrent, .dlc, .ccf, .rsdf, .txt, .rdlinks and .crawljob, dropped anywhere in the app
Subscriptions Channels, playlists, galleries, feeds, indexers and release pages
A job that ran at a provider What a provider account finished with a remote job arrives here as one batch
REST API and MCP collect_links and the collector endpoints
Command line rdownloader links add

Intake batches, link candidates and packages are all persistent — a restart mid-review loses nothing.

Adding links by hand

The Add links dialog: example addresses pasted in with surrounding text, a package name and an empty archive password field

Add links (or a) opens a dialog:

  • Links — several HTTP(S) links, or text with links in it. Multi-part archives are grouped into one package automatically.
  • Package name (optional) — empty means the name is derived from the file names.
  • Archive password (optional) — stored with the package and used later when unpacking.

Two things can silently reduce what you pasted, and both are reported with a count: links dropped by the domain blocklist, and links whose service is switched off (see The download queue).

Known short and alias domains are normalised on the way in — youtu.be, ddl.to and others.

The part of an address after a # is dropped at intake, on every route, because it may hold a share password: no row, event or log line carries it. The exception is a provider whose file key lives there, such as MEGA: the fragment is kept in the encrypted vault, still shown nowhere, and deleted with its row.

A link whose address will not parse is refused by its position in the batch — link 3 — never by quoting what you pasted, which could put a password in the message.

Searching an indexer

Search indexers in the LinkGrabber's top bar — or f — opens the indexer search in a drawer from the bottom of the window, with the keyboard in its field. One press of Search is one request per indexer — by term, or as a TV series or film search with its ids — the hits come as a sortable table, and Add selected brings the chosen releases into this list: an NZB as an NZB import, like a dropped file, a torrent as a package with its seeders and leechers shown in the row. The drawer stays open after you add hits, so you can take several and page on; closed, it keeps your search and its hits for the next time you open it.

The button is there without an indexer too. Until a Newznab or Torznab indexer is enabled under Settings → Usenet → Indexers, the field is disabled and a hint links to those settings, and f lands on that link. The details are in Usenet and NZB.

Packaging

Links are grouped automatically by:

  • an explicit package name you gave,
  • a playlist — its videos become one package named after the playlist, or after the channel when the playlist has no title,
  • a shared name stem,
  • multi-part archive naming — .part1.rar, .r00, .7z.001.

You can override all of it: Regroup (under Filters above the list) re-derives automatically named packages, To new package makes a package from the current selection, and links can be moved between packages. Individual links and whole packages can be renamed.

To select several rows at once, tick one checkbox, hold Shift and tick a later one: every package or link between them is selected too, as in a file manager (Shift+Space on a focused checkbox does the same). The status bar at the bottom then shows how much is selected, packages and links apart, for example "2 packages · 5 links selected · 5.4 GiB" ("≥" when some sizes are not known yet), or "3 links in 1 package selected" while one package holds them all. A package counts as soon as one of its links is ticked; NZB imports are counted after them. In a narrow window the status bar shows the link count alone and names both numbers when you point at it.

The row above the list and the selection bar

Directly above the list sits one row, built the same way as the one in Downloads, from left to right:

  • Select all — once something is ticked, its label names what is selected, packages and links apart — 2 packages · 5 links selected, and any NZB imports after them.
  • Open all packages / Close all packages — one button, opening or closing every package the filters show.
  • The state filter, and Filters: a button that opens Prefer a quality, Prefer a language, the hoster filter, the sort order and Regroup. A small number on it counts what is set behind it; the button beside it clears those filters.
  • Export all packages, the Show metadata switch, and the figures — packages and links, or how many links the filters leave of all of them.

Tick a row and the selection bar appears below that row, in one line: the badge with the same count (2 packages · 5 links selected; in a narrow bar the link count, both numbers in its tooltip), category, priority and post-processing level, then icon buttons — Download, Download paused, Show in list, Export, To new package, Hand to provider where an account takes NZB files, and Remove last. Every icon names itself when you point at it or reach it with the keyboard. The × at the end clears the selection.

The online check

An online check runs automatically after intake; Check links repeats it on demand. How a link is checked depends on what it is:

  • Direct links — HEAD or a range request.
  • Hoster and multihoster links — the provider's own check, through its resolver.
  • Media pages — analysed with yt-dlp.

Each link ends up in one of these states, spelled in the interface as: online, offline, checking…, check failed, not checked, already in the list, not resolvable, being added or added. The package header counts them: {count} online, {count} checking, {count} offline, {count} not checkable.

A failed check is not the same as an offline file. A check that never reached a conclusion — for example because a hoster account's sign-in is broken — says nothing about the file. Such links are labelled not checkable, each with its own reason, and the package can still be enqueued. One reason worth knowing: a hoster whose check needs an account this installation does not have says exactly that — the download may still work without one.

Cached: when a provider says it holds the file. A neutral chip beside the link reads cached; its tooltip names the provider and when it answered: TorBox reported on … that it holds this file in its cache. That is a measurement, not a promise — a cache changes without notice. Two ways lead to the chip:

  • The account that checks a hoster link says so. Premiumize does this when it is the account that checks the link: a hoster link on Premiumize's hoster list, for which you have no account of that hoster's own and no multihoster account that sorts alphabetically before Premiumize and covers it.
  • A provider you run remote jobs on is asked before the online check — one account per provider — about a magnet, a stored .torrent, an indexer's NZB link, or a hoster link another plugin resolves. TorBox answers for torrents, Usenet and web downloads; Premiumize answers for magnets.

A cache answer never turns a link offline, never changes who resolves it and never queues anything. A hoster link you have no account for stays not checked and still shows the chip. A link to Premiumize's own download servers shows no chip.

Already in the list means the address is in the LinkGrabber or in the download list, finished or not; a deleted download does not count. A duplicate can deliberately be added again after a confirmation.

Not resolvable is the one state that cannot be queued: the address answered with a page rather than with a file. The reason stands in the badge's title.

Nothing that is a web page becomes a file

Every address a crawler — a plugin or a site rule — returns is judged before a row exists for it. An address a resolver, a transfer backend or a known provider claims goes through unprobed. Any other address is probed and kept only if the response is file content; one that answers with a page is dropped, and the intake says so: 12 of 40 found links were not files and were dropped. An address whose probe gets no answer at all — a timeout, a refused connection — is kept unconfirmed.

When no resolver is installed for a host

A site rule can resolve a release page correctly and still hand over an address this installation has no resolver for — a hoster that is not supported, or a forwarding service in front of another address. The row then says so: No resolver is installed for <host>, so this address cannot be added to the download list. It may be a hoster this installation does not support, or a forwarder to another address. The message This address answers with a page, not with a file appears only where it is true: a supported host that really serves a page.

Mirror groups — one release, not five

A release page usually offers the same file at several hosters. Links in one package that point at the same file are put into a mirror group, so five hosters arrive as one row with four mirrors behind it.

A mirror is not a duplicate. A duplicate is the same address a second time and is set aside; a mirror is a different address for the same bytes and is kept as a fallback for when the chosen one goes offline.

How a group is formed

Three sources, in the order they are trusted:

Evidence The badge reads Confidence
The page said so — a site rule that declares its links (or, per release, the same position at each hoster) are copies of one file 5 mirrors Stated by the source
File name and size agree, once the online check has run 5 mirrors Corroborated
Only the file name is shared 5 possible mirrors A proposal

A proposal reads possible mirrors, in warning colour with a dashed edge. The badge's title spells out the evidence in every case.

Groups are recomputed at intake, after the online check, and when links are moved between packages. They survive a restart.

Choosing which mirror runs

One member of a group is the chosen mirror; the others sit behind the chevron pair on its row. Three controls decide which:

  • Prefer a quality and Prefer a language in the toolbar are a standing preference. Inside a group they pick the member that will be fetched; outside one they hide what cannot match. The preference is stored on the server, so it still decides the package that arrives tomorrow.
  • Use this mirror pins a member by hand. It then reads Chosen by you, and neither a later preference nor a regroup takes it back. Undo my mirror choice releases it.
  • Ungroup these links takes a proposal apart when you can see the links are different cuts of the same release. It asks once, and the decision is remembered, even when the online check later finds matching sizes. A group a site rule declared, or one matching sizes corroborated, cannot be ungrouped: a wrong one there is a fault of the source to report.

A group whose mirrors are all offline says so — No mirror available — and stays queueable, since the hosters may simply be wrong.

Quality, language and hoster are read from what the source said or from what the release name spells out, using a closed list of tokens. Nothing is guessed, so Show.2160.mkv is not 2160p.

A file with several sources

A link that arrives from a Metalink document (.meta4 or .metalink) is not a mirror group but one file with several sources. Its row carries a layers badge — hovering it reads 5 sources — and its details list Sources (5): every address the transfer will try, in the order it tries them, each with its priority and with any credential in it redacted. HTTP, FTP and SFTP sources are all used. An address that points at this machine, or into your own network for a document you did not hand over yourself, is listed but never requested.

What happens when the running mirror fails is the queue's business — see The download queue.

Release pages and site rules

A release page — a download folder, a release listing, a page that posts one file at several hosters — is recognised by a site rule, which turns it into one package named after the release, holding the links and none of the page's own. A page that lists several releases becomes one package per release instead. The release title the rule read is kept after the online check.

rDownloader brings thirteen rules of its own, switched off — Linux distributions, Blender, free software, Internet Archive items and paste services; other rules come from an export or from your own hand. How to switch, export, import and write them is on Site rules.

Choose before fetching

A rule can list a page's releases and fetch nothing until you choose — for a page with many builds or episodes, or one whose every release sits behind a captcha:

  1. Paste the page as usual. Instead of links, the LinkGrabber shows Choose before fetching above the list and opens the choice: the page's releases, grouped by season where the rule reads one.
  2. Tick what you want — a whole season with the season's checkbox, or single releases. The filters narrow the list by what the rule reads — season, episode (a season pack is its own choice), resolution and language; Pick all shown takes what the filters leave.
  3. Press Fetch links. The releases are fetched one after the other, each with one captcha where the page asks for one, which you solve as any other — in the captcha window or through the browser extension. The header counts the round ("3 of 8") and says Waiting for captcha while one waits for you; Stop ends the round.
  4. Each fetched release arrives as one package named after it, in the list below.

A page whose releases need no captcha offers Take all as well, which fetches every release still open in one click; each becomes its own package, with the copies at different hosters as mirrors.

A captcha nobody answered leaves its release open to another try — it is not marked failed — and so does stopping. A release that is done or underway cannot be ticked again.

The page does not have to be pasted here. Copied to the clipboard, sent by the browser extension or by Click'n'Load, it lands in the same choice: on the LinkGrabber the choice opens, on any other page a notice with Choose leads there, and the capture agent or the extension says where to choose. Handing the same page in again keeps its list as it is.

The list lives in the service's memory. If it is gone — discarded elsewhere, pushed out after twenty pages, or the service restarted — Fetch links reads the page again by itself (that costs no captcha) and fetches the same releases; Stop and Discard list simply close it. The captcha window always shows in front of the choice.

Reviewing before you queue

Per package you can set:

Under Filters, sort the list by Name, Hoster, Size or Added, ascending or descending, or keep it Manual and drag rows into place — the handle also responds to ↑ / ↓ once it has focus. Reordering under an active filter is refused with a reason, because the visible list is not the whole package.

The state filter beside Filters and the hoster filter inside it narrow the list. Prefer a quality and Prefer a language sit inside Filters too: they apply to the whole list, stay set for the next package, and where a mirror group offers a choice they pick the matching mirror instead of hiding anything.

The header above the list names what a link row shows: Name, Link state, Size and Hoster · Variant. The column a download would use for its progress stays empty for a link, so it has no label there. Link state, size, and hoster or variant can be made wider or narrower by dragging their left edge or with the arrow keys, and the header's columns menu resets them; the widths are kept per browser, apart from the download list's. See Column widths.

Edit package opens with the whole name selected, so a pasted name replaces the old one.

A link's menu has Copy link — on a mirror group's row Copy links, every mirror of it — and the package header a Copy links button for all of the package's links, also the ones a filter hides. Where the link's page is known — the page a captured browser download started from, or the page a video or audio link points into — Open source page opens it in a new tab.

Metadata a metadata enricher added shows as chips under a package or link name. Show metadata in the row above the list hides them — nothing is deleted, the choice is kept per browser, and they are shown by default.

A package you opened or closed stays that way in this browser, across reloads. The button beside Select all closes every package the filters show, or opens them again; Open all packages and Close all packages are in the … menu of each package too. A new package starts open, so its links can be reviewed — Show packages closed in the LinkGrabber under Settings → Interface → Display changes that.

Hiding hosters

Above the list, a row of chips — Show and hide hosters — names every hoster with its number of links. A click hides that hoster's links or shows them again, several at once; a link's menu offers the same as Hide links of . While something is hidden, a line says how many links from how many hosters are hidden, and Show all brings them back in one click.

The choice is part of the standing mirror preference, stored on the server like Prefer a quality, so it survives a reload and a restart. Hidden links stay in the LinkGrabber and are neither queued nor checked. Inside a mirror group, a hidden hoster's mirror is never the chosen mirror while a shown one exists — it goes along as the shown link's fallback.

LinkFilter rules

LinkFilter rules decide the moment a link reaches the LinkGrabber what happens to it. Write them under Settings → LinkGrabber → LinkFilter, card LinkFilter rules, with Create rule.

A rule has a Name, Conditions and an Action. Every condition you fill in has to hold; one left empty matches everything:

Condition What it matches
File name A pattern on the name — Wildcard (* any run of characters, ? one, the whole name, capitals ignored) or Regex (searched in the name as written; (?i) ignores capitals)
Size (MiB) From–up to, both inclusive. A link whose size is not known yet matches no bound
File types Endings without the dot, such as nfo or part1.rar; one matching is enough
Hoster A host name without scheme; its subdomains match too
Source How the link arrived — Manual entry, Clipboard, Click'n'Load, API, NZB import, Hotfolder, Browser extension, Browser download or Subscription
Without resolver A link the online check found to be a page with no resolver installed for its host — a GitHub repository copied with the clipboard, say. It holds only after the check; a direct file link without a resolver and a known hoster's page do not count
Action What it does
Hide The link stays in the LinkGrabber but is shown only with Show hidden, and queueing its package leaves it behind
Accept The link stays as it is and no later rule is asked — an exception above a broader rule
Sort into The link goes into the package of this name and/or its package gets this category
Delete The link is deleted from the LinkGrabber, and a package it leaves empty with it

The first enabled rule in the list that matches decides. The arrows on a row set the order, the switch on a row turns a rule off, and an Accept rule placed above a broader Hide rule is the exception to it. Duplicate copies a rule. Export and Import carry the rules to another installation as a bundle, like the other per-area bundles (see Backup and restore); categories travel by name. JDownloader's own filter files cannot be imported.

Hidden links are kept; only a Delete rule deletes. In the LinkGrabber, Filters has the switch Show hidden (n); a hidden link carries a Hidden badge, and its menu offers Show again. Queueing its package leaves a hidden link behind unless you selected it. Deleting a rule shows the links it hid again.

Rules work on links as they arrive, and once more on a link when its online check ends — that is when Without resolver can hold. A Delete rule deletes then without asking: the rule is your consent. For example, Without resolver + Source: Clipboard + Delete keeps copied text with GitHub links out of the LinkGrabber, while a direct file link stays.

To decide the links already in the list again — after you changed a rule, or once the online check has learned the sizes a size bound needs — press Apply LinkFilter under Filters (or Apply to LinkGrabber on the settings card). If a Delete rule would delete links, you are asked first with their number. A notice counts how many links were hidden, shown again, sorted in and deleted. A rule never changes anything in the download list.

Queueing

The LinkGrabber's actions sit in the bar at the top as icon buttons; point at one, or reach it with the keyboard, and its tooltip names it with its key — Add links (A), Enqueue all (E). Enqueue all keeps its colour.

  • Enqueue — this package: the arrow icon on its row; the pause icon beside it adds it paused.
  • Enqueue all (e) — everything in the list.
  • Add paused (w) — adds to the download list without starting anything.
  • Delete all (r) — clears the LinkGrabber; nothing that was already queued is touched.

The keys work anywhere on this page outside a text field. Delete all asks first, and so do the two enqueue buttons when duplicates would be taken along; the same key again answers yes, x or Esc cancels.

What a filter hides stays behind. While a filter is set or a hoster is hidden, Enqueue, Enqueue all and Add paused — on a selection too — take only the links the list shows: with the hoster filter on one hoster, the other hosters' links of the same packages remain in the LinkGrabber, in their package, for later.

A mirror group reaches the queue whole. A shown or selected link takes its mirrors along as fallbacks, even a mirror the state filter or a hidden hoster keeps out of sight, so the queued download has something to fall back to when its chosen mirror fails. A link that is hidden on its own, outside any shown group, stays behind.

Links whose state is queueable — which includes not checkable — go through.

Captured browser downloads

A link that came from an intercepted browser download keeps its request metadata: effective URL, method, referrer, user agent, content disposition and the permitted headers. Expanding the link's row displays it before you queue anything.

A download that would send credentials has to be approved first. That means a form POST, a request with a body, or a signed address. The approval dialog states:

  • the target host and the method,
  • the addresses redirects may follow,
  • the body's field names — never their values,
  • each category of credential paired with the host it would be sent to.

A plain captured GET needs no approval.

The approval is bound to the exact request it was given for, but ignores signature parameters, so a re-signed address for the same file does not ask again. It can be withdrawn at any time. A capture that cannot be reproduced — a file upload, a multi-part form, an oversize or unreadable body — is still shown, with the reason, instead of vanishing.

See Security and privacy.

Link containers

Six container formats are imported through one endpoint, by upload, drag and drop anywhere in the app, a watched folder, the browser extension (from a site you allowed, or with Send file to rDownloader…) or the desktop capture agent — a container opened with it, dropped on its desktop shortcut or sent with Send to. Each becomes a reviewable package carrying the names, sizes, package name and archive password the container declares.

Format Key handling On by default?
DLC The key can only be unwrapped by an online service No
CCF Same No
RSDF Decrypted on this machine — its key is published Yes
.txt No key needed Yes
.rdlinks rDownloader's own export; asks for its passphrase when it is encrypted Yes
.crawljob JDownloader's job file; no key needed Yes

DLC and CCF are off by default and are enabled under Settings → LinkGrabber → Containers. Once enabled, the only thing sent to the configured decryption service is the container key — the links themselves never leave your installation.

A .txt link list is one link per line. [A Name] on a line of its own opens a package, and ; or # starts a comment.

Watched folders accept .ccf and .rsdf but deliberately not .txt, which is also a format people keep notes in, nor .crawljob.

A .crawljob — the file JDownloader's folder watch reads, and what rDownloader's own export writes for it — comes in through the import dialog or a drop: its links, package names and archive passwords. Its download folder and its auto-start decide nothing here; the dialog's own category and Add to the download list once checked do.

An .rdlinks file is what Export writes, from the download list or from here. Its links come in as proposals, like the links of any document: each is assigned to its host again (a short hoster address such as ddl.to becomes the hoster's own domain), checked, and resolved by the plugin installed now — never by the version that resolved it before. Package names, archive passwords, categories (found again by name), file names, sizes and mirror groups come along. An encrypted file asks for its passphrase in the import dialog; a watched folder takes only unencrypted ones.

Usenet downloads and indexer results travel in the file as their NZB itself, never as the indexer's address or its API key, so they come back on any installation, even one that has never seen the indexer. Each lands like an NZB you dropped here — or straight in the download list when the import queues — with the package's name, archive password and category. An indexer result is fetched at export time; one the indexer refuses then (a reached API limit, say) is left out, and the export's message names it with the reason. The import dialog can also queue the packages of a container once their links are checked, instead of leaving them here.

LinkGrabber packages are exported the same way: Export in the selection bar or a package's menu.

NZB and torrent imports

.nzb and .torrent files share the LinkGrabber view with collected links. Press n or use Import (or n) for an NZB, a torrent or any other file the LinkGrabber reads; drag and drop works anywhere in the application.

  • An NZB shows its file list and segment counts, whether a password was detected, and whether it is a duplicate. Limit: 64 MiB. NZB history lists everything imported with status, size and date; deleting an entry lets the same NZB be imported again.
  • An NZB can go to a provider instead of the queue. Where one of your accounts belongs to a provider that takes NZB files — TorBox, Premiumize.me — an NZB row has a Hand to provider menu listing those accounts, and so does the bar for selected NZB imports. The provider fetches the NZB from Usenet itself; the finished files come back here as links, like every remote job. The NZB stays in the list with a Handed to … badge that opens Remote jobs; Enqueue still works and then downloads it here as well. An account whose provider takes no NZB is not offered; a failed import cannot be handed over. The badge goes as soon as you forget or discard the job under Remote jobs. Don't want the offer at all? Switch off Show the hand-over in the LinkGrabber under Settings → Interface → Display; the menu and the selection-bar entry disappear, and a badge already shown stays. A package already in the queue can be handed over from the download queue.
  • A torrent shows its complete file tree, name and total size, and lets you select which files to take before queueing. Limit: 16 MiB. Magnets resolve their metadata on demand, without starting a transfer, and are then reviewed like an uploaded file.

See Usenet and NZB and BitTorrent.

Indexer hits awaiting review

Hits from subscriptions held for review live in a drawer: one line under the link list names the open decisions and opens it. Inside, hits are grouped per subscription and can be queued or dismissed per group; see Subscriptions.

Recognising what a file really is

When a server's content type is unhelpful, the first bytes decide whether a file is an NZB or a torrent.

A link that turns out to be a .torrent is named after the torrent — the link, its package and its folder — rather than after the download token the address ended in, and its file tree can be reviewed like an uploaded .torrent. If the file cannot be read during the check, the link keeps a Content-Disposition name or the host name.

Such a torrent is fetched once, which matters at an indexer that counts or limits grabs: the copy the check read is what the download starts from. It is kept for a day and until its link leaves the LinkGrabber, across restarts; without it the download fetches the address again.

An indexer hit keeps the title its feed gave it, falling back to Content-Disposition and X-DNZB-Name.

The domain blocklist

Settings → LinkGrabber on its General tab, beside Blocklist, Containers and LinkFilter: Recognise mirrors switched on and Look for duplicates in the history too switched off, with Factory settings and Save configuration

A text file of domains that are never accepted at intake, with comment support and subdomain matching. Configure it under Settings → LinkGrabber → Blocklist; the same page holds the container formats above (tab Containers) and mirror recognition (tab General) (Mirror groups). The two display switches — cover images of indexer hits and the Hand to provider menu — are under Settings → Interface → Display.

Related pages

Clone this wiki locally