Learn How to Use NZB File With A Newsreader


Verified by

The FileInfo.com team has independently researched the NewzBin Usenet Index file format and Mac, Windows, and Linux apps listed on this page. Our goal is 100% accuracy and we only publish information about file types that we have verified.

If you would like to suggest any additions or updates to this page, please let us know.

GrabIt NZB Tutorial

In this tutorial we will explain how to use NZB files with the GrabIt newsreader. Fast Usenet provides a customized version of GrabIt which comes configured with our server settings. This allows for fast and easy setup of our service. NZB files can also be used with most popular newsreader such as SABnzbd and NZBGet.


What to do when I’ve got an NZB file?

You can import these NZB files in your favorite newsreader, if it has such functionality of course. In the various tutorials will be explained how to use NZB files with those newsreaders.

Step 2: Search

After you have setup and configured GrabIt you can visit your favorite NZB search site to find an NZB file. In this tutorial we are going to search for “Ubuntu”. (Ubuntu is a free version of the Linux operating system)

NZBs and Newsreaders

Newsreaders started to specialize in NZBs became they were so popular. Indexing NZB’s was done with other specialized sites. Newsreaders became extremely popular that did not support traditional newsgroups and articles. It was too time consuming, Users found having to sort through newsgroups. To be able locate individual binaries they wanted it as simple as possible. An easy-to-search collections of NZBs is what these Indexing sites provided. So there was no need for newsgroups. Finding binaries without having to browse newsgroups to find what they wanted this was great. Users could simply search indexing sites or integrated NZB newsreaders. It is standard now that Most newsreaders work with NZBs, though some may not. So be sure to Check our Best NZB Sites

If you need a Newsreader that supports NZB’s we recommend Newshosting client.  You can simply  link the newsreader to an NZB indexing site, which allows an integrated search.  Instead of having to use them separately this means that you can search an indexing site inside of Newshosting. How easy is that!

NZB Format, Searching, and Binaries

A binary file is a non-text file that is encoded as a text file so it can be distributed across the Usenet. So in other words a binary file is not just normal text. When a Usenet user wants to be able to download videos, images, or software . If you want a much faster download of binaries you are looking for, that is what it does.  What happens normally when you want to  download a Usenet Newsgroups binary, is that you need to download it like a regular message. This means you download the header first and then everything else that comes with it will follow. But fortunately, large binaries can be separated into multiple smaller messages. NZBs use those small individual parts of a broken-up binary and provide the necessary information to reassemble them all together again after the download has been finished. This makes for a much easier and faster binaries download. To summarize this is the process that makes accessing Usenet much, much easier.

General Workflow

Here’s how you’ll generally download things with SABnzbd:

  1. Search for something you want to download, using your usenet indexer of choice,
  2. Download an NZB describing that data,
  3. Give that NZB to SABnzbd in one of a wide variety of ways,
  4. SABnzbd then downloads from your usenet provider(s), and optionally does several things:

Query Predicates

There are a few other useful functions in the clojure.data.zip.xml ns we haven’t yet looked at, namely: text=, attr=, and tag=. These functions allow you to construct query predicates to run against a given node. As an example, let’s pull out the first file segment from the example.nzb file using the attr= function:

From the root node of the document we reach down into :file, :segments, and :segment in turn, then use the attr= query predicate to match a :segment with a value of "1".

Interestingly enough, the other two query predicates have shortcuts for their use. You have already been using the tag= query predicate every time you use a keyword to locate a tag. To use the text= predicate easily, just use a string. For example, to retrieve the second :segment based on its content of 987654321fedbca@news.newzbin.com:

Finally, you can combine these query predicates to match multiple things on a given node by using a vector:

Here we are matching on both the :number attribute being "1", and the :bytes attribute being "102394". Obviously, you can use strings here to match against content too.


I hope these simple examples have given you an idea of the ease with which you can process XML using Clojure, and how simple it is to extend the tools already provded in interesting directions.