tv_grab_na_dtv - Man Page

Grab TV listings from DirecTV.


tv_grab_na_dtv --help

tv_grab_na_dtv --configure [--config-file FILE]

tv_grab_na_dtv [--config-file FILE] [--output FILE]
              [--days N] [--offset N] [--processes N]
              [--timeout N] [--agent STRING]
              [--quiet | --debug]

tv_grab_na_dtv --list-channels [--config-file FILE]
             [--output FILE] [--quiet | --debug]


Output TV and listings in XMLTV format from

First you must run tv_grab_na_dtv --configure to choose which stations you want to receive.

Then running tv_grab_na_dtv with no arguments will get listings for the stations you chose for five days including today.


Prompt for which stations to download and write the configuration file.
--config-file FILE
Set the name of the configuration file, the default is ~/.xmltv/tv_grab_na_dtv.conf.  This is the file written by --configure and read when grabbing.
--output FILE
When grabbing, write output to FILE rather than standard output.
--days N
When grabbing, grab N days rather than 5.
--offset N
Start grabbing at today + N days.
--timeout N
Set request timeout in seconds. Default is 240 seconds.
--agent STRING
Specify browser agent string, as provided to remote server.
--processes N
Number of processes to run to fetch program details. 8 is a good number to try. You could try more with plenty of CPU and bandwidth. More processes will reduce the time it takes to fetch your listings. But be warned, the benefit might not be as much as you think, and the more processes you initiate the more you are making it obvious you are scraping and more likely to get banned by the source site. A 'fast' website scraper is an oxymoron!
Only print error-messages on STDERR.
Provide more information on progress to stderr to help in debugging.
Output a list of all channels that data is available for. The list is in xmltv-format.
Show which capabilities the grabber supports.
Show the version of the grabber.
Print a help message and exit.

Error Handling

If the grabber fails to download data, it will print an error message to STDERR and then exit with a status code of 1 to indicate that the data is missing.

Environment Variables

The environment variable HOME can be set to change where configuration files are stored. All configuration is stored in $HOME/.xmltv/. On Windows, it might be necessary to set HOME to a path without spaces in it.

TEMP or TMP, if present, will override the directory used to contain temporary files.  Default is "/tmp", so under Windows one of these is required.


Grabber written Rod Roark (, Modified by Adam Lewandowski ( (January 2011, October 2014) to account for DirecTV site/API changes.


Like any screen-scraping grabber, this one will break regularly as the web site changes, and you should try to fetch a new one from the project's repository. At some point the breakage might not be fixable or it may be that nobody wants to fix it.  Sane people should use Schedules Direct instead.


2023-02-23 perl v5.36.0 User Contributed Perl Documentation